源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Qt之ui在程序中的使用-多继承法介绍

  • 时间:2022-06-10 23:51 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Qt之ui在程序中的使用-多继承法介绍
thirdDialog.h
[u]复制代码[/u] 代码如下:
#ifndef THIRDDIALOG_H #define THIRDDIALOG_H #include <QtGui> #include "ui_third.h" class thirdDialog:public QDialog,private Ui::Third { Q_OBJECT public: thirdDialog(QWidget *parent=0); ~thirdDialog(); }; #endif thirdDialog.cpp #include "thirdDialog.h" thirdDialog::thirdDialog(QWidget *parent) { setupUi(this); } thirdDialog::~thirdDialog() { }
maindialog.h
[u]复制代码[/u] 代码如下:
#ifndef MAINDIALOG_H #define MAINDIALOG_H #include <QtGui> #include "ui_first.h" #include "ui_second.h" #include "thirdDialog.h" class MainDialog : public QDialog { Q_OBJECT public: MainDialog(QWidget *parent = 0, Qt::WFlags flags = 0); ~MainDialog(); private: Ui::First firstUi; Ui::Second secondUi; private slots: void on_btnChild_clicked(); }; #endif // MAINDIALOG_H
maindialog.cpp
[u]复制代码[/u] 代码如下:
#include "maindialog.h" MainDialog::MainDialog(QWidget *parent, Qt::WFlags flags) : QDialog(parent, flags) { QTabWidget *tabWidget = new QTabWidget(this); QDialog *w1 = new QDialog; firstUi.setupUi(w1); QWidget *w2 = new QWidget; secondUi.setupUi(w2); tabWidget->addTab(w1,tr("First Tab")); tabWidget->addTab(w2,tr("Second Tab")); tabWidget->resize(300,300); connect(firstUi.btnClose,SIGNAL(clicked()),this,SLOT(close())); connect(secondUi.btnChild,SIGNAL(clicked()),this,SLOT(on_btnChild_clicked())); } MainDialog::~MainDialog() { } void MainDialog::on_btnChild_clicked() { thirdDialog *dlg = new thirdDialog; dlg->exec(); }
[b]分析[/b]: 多继承方式可直接对ui界面上的控件或函数进行操作,代码编写更简洁; 而是用单继承方式,在操作ui页面上的控件时需加上ui对象前缀,编写代码较为麻烦。 但,对于程序中所需ui页面较多时,使用单继承法则要灵活的多。。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部