QT+VS2008 项目引入Qt专有UI文件
2013-03-24 23:07
176 查看
Qt自带的Designer非常好用,可以设计整个面板的布局,而且很容易对齐。
在非QT4工程里如何使用UI文件呢?下面给大家一一道来。
UI文件是Qt独有的记录软件UI的文件,可以用记事本打开,可以看到语法近似于xml。再使用Qt自带的uic(User Interface Compiler)命令编译后,可以产生一个C++的界面类。
uic命令格式如下:uic My.ui -o My.h
生成的.h文件可以直接使用在C++工程里,例如下面的代码:
MyQt类继承了QWidget类和Ui_Form类,在构造函数中调用UiForm类中的setupUi(this)。而MyQtUI.h就是MyQtUI.ui编译出来的文件。MyQtUI.h源代码:
如何让整个工程可以方便的更改界面呢?我们可以吧ui文件作为资源文件,改变它的编译方式,如下图:
以后直接Ctrl+F5编译就好了。如果要修改ui的话,双击调用Designer修改,Ctrl+s保存后编译即可。
范例代码下载地址:http://pan.baidu.com/share/link?shareid=363445&uk=2804348991
转载的话留个地址吧:/article/7145392.html
在非QT4工程里如何使用UI文件呢?下面给大家一一道来。
UI文件是Qt独有的记录软件UI的文件,可以用记事本打开,可以看到语法近似于xml。再使用Qt自带的uic(User Interface Compiler)命令编译后,可以产生一个C++的界面类。
uic命令格式如下:uic My.ui -o My.h
生成的.h文件可以直接使用在C++工程里,例如下面的代码:
// MyQt.h #pragma once #include <QtGui/QWidget> #include "MyQtUI.h" class MyQt : public QWidget,Ui_Form { Q_OBJECT public: MyQt(void); };
// MyQt.cpp
#include "MyQt.h" MyQt::MyQt(void) { setupUi(this); }
MyQt类继承了QWidget类和Ui_Form类,在构造函数中调用UiForm类中的setupUi(this)。而MyQtUI.h就是MyQtUI.ui编译出来的文件。MyQtUI.h源代码:
/******************************************************************************** ** Form generated from reading UI file 'MyQtUI.ui' ** ** Created: Sun Mar 24 16:36:02 2013 ** by: Qt User Interface Compiler version 4.8.2 ** ** WARNING! All changes made in this file will be lost when recompiling UI file! ********************************************************************************/ #ifndef MYQTUI_H #define MYQTUI_H #include <QtCore/QVariant> #include <QtGui/QAction> #include <QtGui/QApplication> #include <QtGui/QButtonGroup> #include <QtGui/QHeaderView> #include <QtGui/QWidget> QT_BEGIN_NAMESPACE class Ui_Form { public: void setupUi(QWidget *Form) { if (Form->objectName().isEmpty()) Form->setObjectName(QString::fromUtf8("Form")); Form->resize(400, 300); retranslateUi(Form); QMetaObject::connectSlotsByName(Form); } // setupUi void retranslateUi(QWidget *Form) { Form->setWindowTitle(QApplication::translate("Form", "Form", 0, QApplication::UnicodeUTF8)); } // retranslateUi }; namespace Ui { class Form: public Ui_Form {}; } // namespace Ui QT_END_NAMESPACE #endif // MYQTUI_H
如何让整个工程可以方便的更改界面呢?我们可以吧ui文件作为资源文件,改变它的编译方式,如下图:
以后直接Ctrl+F5编译就好了。如果要修改ui的话,双击调用Designer修改,Ctrl+s保存后编译即可。
范例代码下载地址:http://pan.baidu.com/share/link?shareid=363445&uk=2804348991
转载的话留个地址吧:/article/7145392.html
相关文章推荐
- QT+VS2008 项目引入Qt专有UI文件
- QT+VS2008 项目引入Qt专有QRC文件
- jQuery 入门01 --在项目中引入jQuery
- 在vue项目中正确的引入jquery
- 【vue】如何在 Vue-cli 创建的项目中引入iView
- 【Android笔记】Android中引入项目报: “invalid resource directory name bin/res/crunch”错误
- 如何将一个项目引入到另一个项目
- SpringMVC maven项目引入web资源无效的原因及解决办法
- 使用Maven创建Web项目后,jsp引入静态文件提示报错。JSP 报错:javax.servlet.ServletException cannot be resolved to a type
- springboot+maven项目,引入Lombok包
- ireport引入到项目无法解析字体及pdf无法显示中文的解决方案
- [thinkPHP5项目实战_07]引入后台管理页面
- Android实战简易教程<三十五>(将二维码扫描和生成Demo引入项目实例)
- 现有Android项目引入ReactNative
- 项目引入easyui后 jsp报jQuery is not defined
- myEclipse中的web项目直接引入到eclipse中
- 如何在已有项目中引入FineUIMvc
- 侧滑开源项目 SlidingMenu的使用(一)(如何引入篇)
- maven项目pom中添加依赖,但是jar无法引入项目
- vue项目引入阿里图标