QGroupBox
提供一個框架、框架名稱與快捷鍵,屬於版面配置的元件,您可以將不同的QWidget集合在不同的QGroupBox中成為一個群組,框架的名稱可以置
左、置中或置右,您也可以將QGroupBox當作一個容器,當中還可以使用其它的版面配置方式,像是QVBox等等。
下面這個程式簡單的示範QGroupBox的使用,請編輯main.cpp:
#include <qapplication.h> #include <qgroupbox.h> #include <qlabel.h> #include <qpushbutton.h> #include <qlayout.h>
class GroupBox : public QWidget { public: GroupBox() { hbox = new QHBoxLayout(this, 10, 10); showGroupBox1(QGroupBox::Vertical, AlignLeft, QFrame::WinPanel || QFrame::Raised, "GroupBox1"); showGroupBox2(QGroupBox::Horizontal, AlignCenter, QFrame::Panel || QFrame::Sunken, "GroupBox2"); }
void showGroupBox1(Qt::Orientation o, int align, int style, char *text) { QGroupBox *grpbox;
grpbox = new QGroupBox(3, o, text, this); grpbox->setAlignment(align); grpbox->setFrameStyle(style); hbox->addWidget(grpbox);
new QLabel("Test Label", grpbox); new QLabel("Test Label", grpbox); new QPushButton("Test Button", grpbox); }
void showGroupBox2(Qt::Orientation o, int align, int style, char *text) { QGroupBox *grpbox;
grpbox = new QGroupBox(2, o, text, this); grpbox->setAlignment(align); grpbox->setFrameStyle(style); hbox->addWidget(grpbox);
QLabel *label;
label = new QLabel("Test1", grpbox); label->setFrameStyle(QFrame::Panel | QFrame::Plain); label = new QLabel("Test2", grpbox); label->setFrameStyle(QFrame::Panel | QFrame::Plain); }
protected: QHBoxLayout *hbox; };
int main(int argc, char **argv) { QApplication app(argc, argv);
GroupBox *gbox = new GroupBox(); app.setMainWidget(gbox); gbox->show();
return app.exec(); }
由於只是一些版面配置的程式碼,我們就不多作說明了,直接來看看執行結果:

|
|