Qt工作笔记-QTabWidget插入widget(重要的是编程思想)
生活随笔
收集整理的這篇文章主要介紹了
Qt工作笔记-QTabWidget插入widget(重要的是编程思想)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天看了某xx項目源碼。
發現大神們都是這么寫代碼的。
比如QTableWidget,每一個頁面都插入一個QWidget,而不是一個人在一個一個Tab里面拖控件。
原始的運行圖如下(沒有插入QWidget):
插入兩個QWidget后效果如下:
代碼如下:
Widget.h
#ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include "form1.h" #include "form2.h"namespace Ui { class Widget; }class Widget : public QWidget {Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();private:Ui::Widget *ui;Form1 *form1;Form2 *form2; };#endif // WIDGET_Hform1.h
#ifndef FORM1_H #define FORM1_H#include <QWidget>namespace Ui { class Form1; }class Form1 : public QWidget {Q_OBJECTpublic:explicit Form1(QWidget *parent = 0);~Form1();private:Ui::Form1 *ui; };#endif // FORM1_Hform2.h
#ifndef FORM2_H #define FORM2_H#include <QWidget>namespace Ui { class Form2; }class Form2 : public QWidget {Q_OBJECTpublic:explicit Form2(QWidget *parent = 0);~Form2();private:Ui::Form2 *ui; };#endif // FORM2_Hwidget.cpp
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui->setupUi(this);form1=new Form1();ui->tabWidget->insertTab(0,form1,tr("全是按鈕"));form2=new Form2();ui->tabWidget->insertTab(1,form2,tr("全是CheckBox")); }Widget::~Widget() {delete ui; }form1.cpp
#include "form1.h" #include "ui_form1.h"Form1::Form1(QWidget *parent) :QWidget(parent),ui(new Ui::Form1) {ui->setupUi(this); }Form1::~Form1() {delete ui; }form2.cpp
#include "form2.h" #include "ui_form2.h"Form2::Form2(QWidget *parent) :QWidget(parent),ui(new Ui::Form2) {ui->setupUi(this); }Form2::~Form2() {delete ui; }main.cpp
#include "widget.h" #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); }總結
以上是生活随笔為你收集整理的Qt工作笔记-QTabWidget插入widget(重要的是编程思想)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt工作笔记-仿大佬风格代码(使用#if
- 下一篇: Qt获取本地网卡信息