预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

此例程主要展示用代码方式创建控件并用Layout管理类对其进行布局; 例程来自Qt5.2,如过是默认安装,代码位于:C:\Qt\Qt5.2.0\5.2.0\mingw48_32\examples\widgets\layouts\basiclayouts 涉及类:QDialogQPushbottonQGroupBoxQLabelQLineEditQComboBoxQTextEditQHBoxLayoutQVBoxLayoutQFormLayoutQGridLayoutQMenuQMenuBar main.cpp #include<QApplication> #include"dialog.h" intmain(intargc,char*argv[]) { QApplicationapp(argc,argv); Dialogdialog; dialog.show(); returnapp.exec(); } dialog.h #ifndefDIALOG_H #defineDIALOG_H #include<QDialog> classQAction; classQDialogButtonBox; classQGroupBox; classQLabel; classQLineEdit; classQMenu; classQMenuBar; classQPushButton; classQTextEdit; classDialog:publicQDialog { Q_OBJECT public: Dialog(); private: voidcreateMenu(); voidcreateHorizontalGroupBox(); voidcreateGridGroupBox(); voidcreateFormGroupBox(); enum{NumGridRows=3,NumButtons=4}; QMenuBar*menuBar; QGroupBox*horizontalGroupBox; QGroupBox*gridGroupBox; QGroupBox*formGroupBox; QTextEdit*smallEditor; QTextEdit*bigEditor; QLabel*labels[NumGridRows]; QLineEdit*lineEdits[NumGridRows]; QPushButton*buttons[NumButtons]; QDialogButtonBox*buttonBox; QMenu*fileMenu; QAction*exitAction; }; #endif//DIALOG_H dialog.cpp #include<QtWidgets> #include"dialog.h" Dialog::Dialog() { createMenu();//创键菜单 createHorizontalGroupBox();//创建第一组控件 createGridGroupBox();//创建第二组控件 createFormGroupBox();//创建第三组控件 bigEditor=newQTextEdit;//创建一个独立的文本编辑框 bigEditor->setPlainText(tr("Thiswidgettakesupalltheremainingspace" "inthetop-levellayout.")); //创建对话框按钮组 buttonBox=newQDialogButtonBox(QDialogButtonBox::Ok |QDialogButtonBox::Cancel); connect(buttonBox,SIGNAL(accepted()),this,SLOT(accept()));//连接按钮信号 connect(buttonBox,SIGNAL(rejected()),this,SLOT(reject())); QVBoxLayout*mainLayout=newQVBoxLayout;//创建垂直布局对象 mainLayout->setMenuBar(menuBar);//加入菜单栏 mainLayout->addWidget(horizontalGroupBox);//加入第一组控件 mainLayout->addWidget(gridGroupBox);//加入第二组控件 mainLayout->addWidget(formGroupBox);//加入第三组控件 mainLayout->addWidget(bigEditor);//加入文本编辑框 mainLayout->addWidget(buttonBox);//加