Qt4之动态加载Ui 窗体控件
Qt4之动态加载Ui 窗体控件
要使用动态加载ui窗体,首先要申明:
#include <QtUiTools>
可以在程序运行时,动态加载UI窗体。
代码如下:
- MyWidget::MyWidget(QWidget *parent)
- : QWidget(parent)
- {
- QTabWidget *tabWidget = new QTabWidget(this);
- QWidget *w1 = new QWidget;
- firstUi.setupUi(w1);
- QWidget *w2 = new QWidget;
- secondUi.setupUi(w2);
- tabWidget->addTab(w1,"First");
- tabWidget->addTab(w2,"Second");
- tabWidget->resize(300,300);
- connect(firstUi.childPushButton,SIGNAL(clicked()),this,SLOT(slotChild()));
- connect(secondUi.closePushButton,SIGNAL(clicked()),this,SLOT(close()));
- }
- void MyWidget::slotChild()
- {
- QUiLoader loader;
- QFile file(":/forms/third.ui");
- file.open(QFile::ReadOnly);
- QWidget *third = loader.load(&file);
- file.close();
- third->show();
- }
可以看出是以只读的形式打开.使用QUiLoader方式。
- QUiLoader loader;
- QFile file(":/forms/third.ui");
- file.open(QFile::ReadOnly);
- QWidget *third = loader.load(&file);
- file.close();
- third->show();
截图说明:
评论暂时关闭