Qt调用Ui文件
2016-02-16 22:02
495 查看
Qt设计师方便了界面设计功能,只需要拖拽相关控件就可以满足需求,以前写程序的时候直接创建的是Gui类,并没有单独创建ui,今天因为需要,特意查找了一些资料大致看了一下,记录下来方便以后查找。
网上说ui的使用方法主要有三种,我取两种最简单的方法(简单就好不是)
首先创建一个工程项目,名称为Ui文件,类名为UiDesign,基类为QDialog,到main文件中,将 UiDesign w;
w.show();注视掉(为了显示自定义的Ui)
第一种:
首先利用Qt创建一个Dialog,如图
![](http://img.blog.csdn.net/20160216214613757)
单击保存,编译生成ui_Dialog.h文件
在uidesign.h头文件中包含ui_Dialog.h
uidesign.cpp文件中添加
最后到main.cpp文件中添加
结果:
![](http://img.blog.csdn.net/20160216215610854)
即是我们刚才创建的界面了。
第二种:采用的是多重继承的方法
创建一个Ui,命名为Form,其效果如图
![](http://img.blog.csdn.net/20160216215741597)
注:因为刚配置好LibQGLViewer,所以就拖拽了QGLViewer控件,这里没有关系。
同样是在uidesign.h文件中添加
uidesign.cpp源文件中添加
main.cpp文件中添加
运行结果为:
网上说ui的使用方法主要有三种,我取两种最简单的方法(简单就好不是)
首先创建一个工程项目,名称为Ui文件,类名为UiDesign,基类为QDialog,到main文件中,将 UiDesign w;
w.show();注视掉(为了显示自定义的Ui)
第一种:
首先利用Qt创建一个Dialog,如图
单击保存,编译生成ui_Dialog.h文件
在uidesign.h头文件中包含ui_Dialog.h
#include "ui_libViewer.h" Dialog::Dialog(QWidget *parent /* = 0 */) :QDialog(parent), Ui::Dialog() { setupUi(this) ; }
uidesign.cpp文件中添加
UiDesign::UiDesign(QWidget *parent) : QDialog(parent) { ui.setupUi(this); }
最后到main.cpp文件中添加
Ui::Dialog d ; QDialog *dag = new QDialog ; d.setupUi(dag) ; dag->show() ;
结果:
即是我们刚才创建的界面了。
第二种:采用的是多重继承的方法
创建一个Ui,命名为Form,其效果如图
注:因为刚配置好LibQGLViewer,所以就拖拽了QGLViewer控件,这里没有关系。
同样是在uidesign.h文件中添加
class libViewer:public QDialog , public Ui::Form { public: libViewer(); };
uidesign.cpp源文件中添加
libViewer::libViewer() :QDialog() , Ui::Form() { setupUi(this) ; }
main.cpp文件中添加
libViewer lv ; lv.show() ;
运行结果为:
相关文章推荐
- 如何配置QuickFIX/N
- UI进阶第一天(给大家拜个晚年)
- QuickFIX/N 动态存储配置信息
- [LeetCode] Increasing Triplet Subsequence
- Static table views are only valid when embedded in UITableViewController instances
- Codeforces 626A Robot Sequence
- 数据库连接池的配置问题-空闲线程的监控和回收. druid 1.8的一个bug
- Arduino代码机制-Serial上
- ORA-01789:query block has incorrect number of result columns
- LeetCode 300. Longest Increasing Subsequence 解题报告
- Codeforces Round #127 (Div. 1) B. Guess That Car! 扫描线
- IQueryable & IEnumberable 区别
- HDU 1509 Windows Message Queue(优先队列)
- pcie posted/non-posted request
- poj2926Requirements (曼哈顿距离)
- 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)
- 《转》UIView的剖析!
- 【四】注入框架RoboGuice使用:(Your First System Service Injection)
- iOS CAShapeLayer和UIBezierPath绘图
- InnovEDA PowerPCB/BGA Suite 4.0.1 + InnovEDA Visual HDL V6.7.8 for Verlog