Qt之ui在程序中的使用-多继承法介绍_C语言教程-查字典教程网
Qt之ui在程序中的使用-多继承法介绍
Qt之ui在程序中的使用-多继承法介绍
发布时间:2016-12-28 来源:查字典编辑
摘要:thirdDialog.h复制代码代码如下:#ifndefTHIRDDIALOG_H#defineTHIRDDIALOG_H#include...

thirdDialog.h

复制代码 代码如下:

#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

复制代码 代码如下:

#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

复制代码 代码如下:

#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();

}

分析:

多继承方式可直接对ui界面上的控件或函数进行操作,代码编写更简洁;

而是用单继承方式,在操作ui页面上的控件时需加上ui对象前缀,编写代码较为麻烦。

但,对于程序中所需ui页面较多时,使用单继承法则要灵活的多。。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C语言学习
    热门C语言学习
    编程开发子分类