zoukankan      html  css  js  c++  java
  • Qt之ui在程序中的使用——(3)动态加载ui

    image

    loadui.h

    #ifndef LOADUI_H
    #define LOADUI_H
    
    #include <QtGui/QDialog>
    #include "ui_loadui.h"
    
    class loadUi : public QDialog
    {
    	Q_OBJECT
    
    public:
    	loadUi(QWidget *parent = 0, Qt::WFlags flags = 0);
    	~loadUi();
    
    private:
    	Ui::loadUiClass ui;
    	private slots:
    		void sl_creatChild();
    };
    
    #endif // LOADUI_H

    loadui.cpp

    #include "loadui.h"
    #include <QtUiTools/QtUiTools>
    
    loadUi::loadUi(QWidget *parent, Qt::WFlags flags)
    	: QDialog(parent, flags)
    {
    	ui.setupUi(this);
    	connect(ui.btnCreatChild,SIGNAL(clicked()),this,SLOT(sl_creatChild()));
    }
    
    loadUi::~loadUi()
    {
    
    }
    
    void loadUi::sl_creatChild()
    {
    	QUiLoader loader;
    	QFile file("forms/child.ui");
    	file.open(QFile::ReadOnly);
    	QWidget *widget_child = loader.load(&file);
    	file.close();
    	widget_child->show();
    }

    main.cpp

    #include "loadui.h"
    #include <QtGui/QApplication>
    
    int main(int argc, char *argv[])
    {
    	QApplication a(argc, argv);
    	loadUi w;
    	w.show();
    	return a.exec();
    }
    

    因为本示例中用到了QUiLoader类,需要image

    ,还有资源里应该加载child.ui的路径。(<qresource><file>forms/child.ui</file></qresource>)


  • 相关阅读:
    工科物理实验()中国大学MOOC答案(已更新)
    类似jar文件使用java无法打开问题
    python9、10章
    nmap的理解与利用(初级)
    常见端口
    配置优化
    删除表操作
    万能的map
    测试
    Mapper.xml
  • 原文地址:https://www.cnblogs.com/hanzhaoxin/p/2771077.html
Copyright © 2011-2022 走看看