请问:QLayout排版有关问题

请教:QLayout排版问题。



C/C++ code
QPushButton#TopSec
{
    border-image:url(":/Skin/Security_NB.png");
    border:0px;
}
QPushButton#TopSec:hover
{
    border-image:url(":/Skin/Security_PB.png");
}
QPushButton#TopSec:checked
{
    border-image:url(":/Skin/Security_PB.png");
}


QPushButton 加载QSS如上所示:加载两个图片。。正常,鼠标置上,按下

1.如何实现,单击Button2,让Button1的按下状态恢复成正常状态。

2.QLayout加载控件后,在setLayout之后,会在QWidget上产生图所示的红线,如何才能缩小这个差距。
让QLayout铺满整个QWidget。



------解决方案--------------------
layout->setMargin(0);
layout->setSpacing(0);

------解决方案--------------------
第一个问题,给btn2添加一个槽函数,clicked()之后,btn1的状态设置为正常

第二个 图看的不是很清除2楼说的 setMargin 就是调整layout和边框的间距的


楼主也可以在border上做做文章。
------解决方案--------------------
btn1->setStyleSheet("QPushButton{background:url(:/Resources/pause_nor.png);border:0px;}"/*正常状态*/
"QPushButton:hover{background:url(:/Resources/pause_over.png);border:0px}"/*鼠标经过*/
"QPushButton:pressed{background:url(:/Resources/pause_over.png); position: relative;top: 1px; left: 1px;}"/*鼠标按下*/);
当按下btn2的时候btn1的按下状态自动就会消失的,不知楼主的btn1为什么会一直是按下状态?