(1)、QWidget窗體顯示與隱藏:
if(detailWidget->isHidden())
detailWidget->show();//QWidget窗體顯示
else
detailWidget->hide();//QWidget窗體隱藏
(2)、
1. 直接添加兩個按鈕,則按鈕大小會隨前面控件:
QGridLayout *LeftLayout =new QGridLayout;
LeftLayout->addWidget(nameLabel,0,0);
LeftLayout->addWidget(nameLineEdit,0,1);
LeftLayout->addWidget(sexLabel);
LeftLayout->addWidget(sexComboBox);
QPushButton *OKBtn =new QPushButton(tr("確定"));
QPushButton *DetailBtn =new QPushButton(tr("詳細"));
// //QDialogButtonBox *btnBox =new QDialogButtonBox(Qt::Vertical);//對話框按鈕組,按鈕豎直放
// QDialogButtonBox *btnBox =new QDialogButtonBox(Qt::Horizontal);//對話框按鈕組,按鈕水平放一排
// btnBox->addButton(OKBtn,QDialogButtonBox::ActionRole);
// btnBox->addButton(DetailBtn,QDialogButtonBox::ActionRole);
LeftLayout->addWidget(OKBtn);
LeftLayout->addWidget(DetailBtn);
//QHBoxLayout *mainLayout =new QHBoxLayout(baseWidget);
QVBoxLayout *mainLayout =new QVBoxLayout(baseWidget);
mainLayout->addLayout(LeftLayout);
2. 以對話框按鈕組方式加入到佈局中,則按鈕會正常顯示:
<span style="color:#c0c0c0;"> </span><span style="color:#800080;">QGridLayout</span><span style="color:#c0c0c0;"> </span><span style="color:#000000;">*</span><span style="color:#000000;">LeftLayout</span><span style="color:#c0c0c0;"> </span><span style="color:#000000;">=</span><span style="color:#808000;">new</span><span style="color:#c0c0c0;"> </span><span style="color:#800080;">QGridLayout</span><span style="color:#000000;">;</span><pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style="color:#c0c0c0;"> </span><span style="color:#000000;">LeftLayout</span><span style="color:#000000;">-></span><span style="color:#000000;">addWidget</span><span style="color:#000000;">(</span><span style="color:#000000;">nameLabel</span><span style="color:#000000;">,</span><span style="color:#000080;">0</span><span style="color:#000000;">,</span><span style="color:#000080;">0</span><span style="color:#000000;">);</span>
LeftLayout->addWidget(nameLineEdit,0,1);
LeftLayout->addWidget(sexLabel);
LeftLayout->addWidget(sexComboBox);
QPushButton *OKBtn =new QPushButton(tr("確定"));
QPushButton *DetailBtn =new QPushButton(tr("詳細"));
//QDialogButtonBox *btnBox =new QDialogButtonBox(Qt::Vertical);//對話框按鈕組,按鈕豎直放
QDialogButtonBox *btnBox =new QDialogButtonBox(Qt::Horizontal);//對話框按鈕組,按鈕水平放一排
btnBox->addButton(OKBtn,QDialogButtonBox::ActionRole);
btnBox->addButton(DetailBtn,QDialogButtonBox::ActionRole);
//LeftLayout->addWidget(OKBtn);
//LeftLayout->addWidget(DetailBtn);
//QHBoxLayout *mainLayout =new QHBoxLayout(baseWidget);
QVBoxLayout *mainLayout =new QVBoxLayout(baseWidget);
mainLayout->addLayout(LeftLayout);
mainLayout->addWidget(btnBox);//以對話框按鈕組方式加入到佈局中