QT5.7在VS2015中的使用(3)

搭建好了界面部件,只是编程的开始,如何在应用程序中操控这些部件才是更重要。这篇博文将讲解如何去操作界面上的widgets部件。

首先,我们要知道窗体的使用有两种方式,编译时和运行时,这里我主要说明在编译时的使用。

一、编译时用户界面处理

我们使用QT设计师编辑好界面后,回到VS界面进行编译,就会生成对应界面的“ui_***.h”文件,它包含了窗体的用户界面对象和一些函数,以下是类内容的分析。

然后我们在QT设计师中添加两个按钮和一个菜单项,然后编译观察更改后的ui_****.h文件内容的变化

编译后的ui_***.h文件,可以发现我们添加的部件的内容。


二、使用界面类(QT5Demo)

编译好ui文件后,就可以在应用程序中使用ui部件(widget)了,ui部件的使用主要由三种方法:

1.直接应用

2.单一继承

3.多继承

1.直接应用法

创建一个widget或者mainwindow作为ui部件的载体,然后将用户界面安装在其上。


直接使用方法的缺点是无法使用自定义槽函数,这就造成ui各部件之间的交互困难。为了避免这种情况,我们需要使用单一继承法。

2.单一继承法

QT自动生成的代码就是单一继承法,把ui作为类的私有数据成员,然后在类中使用ui.×××来调用ui中的部件,代码就不贴了。

ui还可以声明为指针数据成员,相对与直接声明为数据成员有一定的优点,详细参考帮助手册。

3.多继承法

多继承法就是使某一类直接继承UI类和QWidget/QMainWindow类,使ui的部件在类的作用域中可以直接使用,不用再使用ui前缀。

感觉这种方法与C#中用partial class 来组合MainForm.Designer.cs与MainForm.cs有点类似,Qt用信号与槽代替了C#中的回调,将两者比较一下还是有点收获的。


三、信号与槽的使用

1.使用connect()函数,连接信号与槽,这个介绍已经很多了,这里就不介绍了。

2.自动连接。

采用以下语法自动连接,适用于部件的所有信号:


例如,槽声明


槽定义(补充:Qt5.7解决中文显示问题):


“退出”按钮——用Qt设计师拖拽的方式连接信号和槽:


运行效果:

关于Qt在VS2015中的使用,先解决这儿多吧。


  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值