我想实现第一个图的效果,但是用QStackedLayout做出来的效果,却是第二个的,请问这是怎么回事啊?
代码如下:
pauseTimeButton = new QPushButton(tr("暂停"),this); pauseTimeButton->setFixedSize(40,23); resetTimeButton = new QPushButton(tr("重置"),this); resetTimeButton->setFixedSize(40,23); timeStackedLayout = new QStackedLayout; //timeStackedLayout->setMargin(0); //timeStackedLayout->setSpacing(0); timeStackedLayout->addWidget(pauseTimeButton); timeStackedLayout->addWidget(resetTimeButton); //qDebug() << timeStackedLayout->minimumSize(); //QGroupBox *stackedGroupBox = new QGroupBox(this); //stackedGroupBox->setStyleSheet("border-style:hidden"); //stackedGroupBox->setFixedSize(43,25); //stackedGroupBox->setLayout(timeStackedLayout); resetTimeButton->setVisible(false); QHBoxLayout *dateTimeLayout = new QHBoxLayout; dateTimeLayout->setMargin(5); dateTimeLayout->setSpacing(0); dateTimeLayout->addStretch(2); dateTimeLayout->addWidget(dateLabel); dateTimeLayout->addStretch(1); dateTimeLayout->addWidget(dateEditWidget); dateTimeLayout->addStretch(2); dateTimeLayout->addWidget(timeLabel); dateTimeLayout->addStretch(1); dateTimeLayout->addWidget(timeEditWidget); dateTimeLayout->addStretch(2); dateTimeLayout->addWidget(weekComboBox); dateTimeLayout->addStretch(1); //dateTimeLayout->addWidget(stackedGroupBox); dateTimeLayout->addLayout(timeStackedLayout); //dateTimeLayout->addWidget(pauseTimeButton); //dateTimeLayout->addWidget(resetTimeButton); dateTimeLayout->addStretch(2); QGroupBox *dateTimeGroupBox = new QGroupBox(this); dateTimeGroupBox->setFixedHeight(35); dateTimeGroupBox->setLayout(dateTimeLayout); connect(pauseTimeButton,SIGNAL(clicked()),this,SLOT(pauseTimeButtonClicked())); connect(resetTimeButton,SIGNAL(clicked()),this,SLOT(resetTimeButtonClicked()));
我怀疑,是按钮在加入QstackedLayout的时候,还是默认的大小(75,23),所以会导致照不齐的结果。。。。求指导
|