码迷,mamicode.com
首页 > 其他好文 > 详细

QT对话框——利用QT设计师

时间:2017-01-07 13:17:13      阅读:421      评论:0      收藏:0      [点我收藏+]

标签:显示   put   accept   elb   one   title   cond   基类   cpp   

1.      新建工程项目,application-QT widgets application,名字dialog,基类选择QDialog,选择使用界面文件(.ui)。

技术分享

 

2.      打开dialo.ui文件,即打开了界面编辑,界面中包含Buttons、Containers、input widgets等窗口部件。

(1)依次向对话框中拖入3个pushButton,类名分别命名为okButton、cancelButton、moreButton,text名字输入OK、Cancel、More,default设置为真、真、假。

在Cancel和More的按钮之间添加一个verticalspacers。

(2)拖入一个Group Box,类名字命名为primaryBox,title设置为primarykey。然后添加两个label,text输入Column和Order。然后再拖入两个combo Box,命名为primaryColumnCombo和primaryOrderCombo,然后右键选择编辑项目,分别增加None,Ascending和Desceding条目。

 技术分享

 

(3)在primaryColumnCombo后添加一个horizontalspacers。

(4)单击groupBox,布局-栅格化布局。然后布局-调整大小。使得groupBox大小合适,groupBox中部件排列整齐。

(5)然后可以复制groupBox,按住Ctrl,拖动即可复制。复制的groupBo命名为secondaryBox和ternaryBox。

(6)单击对话框空白处,布局-栅格布局。最终结果如下:

技术分享

 

3.      链接信号和槽。

选择edit-edit signals/slots,进入信号/槽编辑模式。点击OKbutton出现红色箭头,拖动到空白处,松开鼠标,弹出链接配置对话框,选择clicked()和accepted()信号;cancel button选择clicked()和rejected()信号;more button拖动到secondaryBox和ternaryBox,选择toggled()和setVisible();最终的信号链接为:

技术分享

 

setVisible函数可以用来显示部件,而toggled信号是当按钮状态发生变化其就被发射,并返回一定数值。通过将More按钮和两个groupBox链接,当more按钮按下就可以隐藏或者展开两个GroupBox。

4.      编辑代码:

dialog.h

技术分享

 

dialog.cpp

技术分享

 

main.cpp

技术分享

 

5.      运行结果:

 技术分享

技术分享

 

 

 

 

QT对话框——利用QT设计师

标签:显示   put   accept   elb   one   title   cond   基类   cpp   

原文地址:http://www.cnblogs.com/anpingbo/p/6259052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!