大神们都是这么写代码的。
比如QTableWidget,每一个页面都插入一个QWidget,而不是一个人在一个一个Tab里面拖控件。
原始的运行图如下(没有插入QWidget):
插入两个QWidget后效果如下:
CSDN QT大纲:Qt开发必备技术栈学习路线和资料
代码如下:
Widget.h
1 #ifndef WIDGET_H
2 #define WIDGET_H
3
4 #include <QWidget>
5 #include "form1.h"
6 #include "form2.h"
7
8
9 namespace Ui {
10 class Widget;
11 }
12
13 class Widget : public QWidget
14 {
15 Q_OBJECT
16
17 public:
18 explicit Widget(QWidget *parent = 0);
19 ~Widget();
20
21 private:
22 Ui::Widget *ui;
23 Form1 *form1;
24 Form2 *form2;
25 };
26
27 #endif // WIDGET_H
form1.h
1 #ifndef FORM1_H
2 #define FORM1_H
3
4 #include <QWidget>
5
6 namespace Ui {
7 class Form1;
8 }
9
10 class Form1 : public QWidget
11 {
12 Q_OBJECT
13
14 public:
15 explicit Form1(QWidget *parent = 0);
16 ~Form1();
17
18 private:
19 Ui::Form1 *ui;
20 };
21
22 #endif // FORM1_H
form2.h
1 #ifndef FORM2_H
2 #define FORM2_H
3
4 #include <QWidget>
5
6 namespace Ui {
7 class Form2;
8 }
9
10 class Form2 : public QWidget
11 {
12 Q_OBJECT
13
14 public:
15 explicit Form2(QWidget *parent = 0);
16 ~Form2();
17
18 private:
19 Ui::Form2 *ui;
20 };
21
22 #endif // FORM2_H
widget.cpp
1 #include "widget.h"
2 #include "ui_widget.h"
3
4 Widget::Widget(QWidget *parent) :
5 QWidget(parent),
6 ui(new Ui::Widget)
7 {
8 ui->setupUi(this);
9 form1=new Form1();
10 ui->tabWidget->insertTab(0,form1,tr("全是按钮"));
11
12 form2=new Form2();
13 ui->tabWidget->insertTab(1,form2,tr("全是CheckBox"));
14 }
15
16 Widget::~Widget()
17 {
18 delete ui;
19 }
form1.cpp
1 #include "form1.h"
2 #include "ui_form1.h"
3
4 Form1::Form1(QWidget *parent) :
5 QWidget(parent),
6 ui(new Ui::Form1)
7 {
8 ui->setupUi(this);
9 }
10
11 Form1::~Form1()
12 {
13 delete ui;
14 }
form2.cpp
1 #include "form2.h"
2 #include "ui_form2.h"
3
4 Form2::Form2(QWidget *parent) :
5 QWidget(parent),
6 ui(new Ui::Form2)
7 {
8 ui->setupUi(this);
9 }
10
11 Form2::~Form2()
12 {
13 delete ui;
14 }
main.cpp文章来源:https://www.toymoban.com/news/detail-506058.html
1 #include "widget.h"
2 #include <QApplication>
3
4 int main(int argc, char *argv[])
5 {
6 QApplication a(argc, argv);
7 Widget w;
8 w.show();
9
10 return a.exec();
11 }
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓文章来源地址https://www.toymoban.com/news/detail-506058.html
到了这里,关于Qt QTabWidget插入widget(重要的是编程思想)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!