一、概述
由于是在vs2013中进行QT的开发,环境的搭建是:vs2013 、QT for windows with openGL、vs add-in插件。发现搭建好了之后,并不能像QT Creator那样,右击控件可以调到信号槽的绑定,如下图所示:
而Qt Creator是可以的,如下图所示:
二、解决方案
目前发现有两种解决方案,第一种是在VS中将该项目导出到pro文件,然后用QT Creator打开该工程文件,采用原来的方式做信号槽绑定,然后再回到VS中进行编码。第二种是利用qt 设计师来做。下面分别进行说明。
1、使用QT Creator
1)右击项目--->Create basic .pro files
2)在弹出的窗口中选择我们的项目,然后点击确定。
3)用QT Creator打开该项目文件(.pro文件),就可以进行信号槽编辑了。
2、使用QT 设计师
1)双击ui文件,vs会自动调用qt desinger打开它
2)选择编辑信号/槽工具
3)点击需要编辑的控件,然后拖动它到信号的接收方即可。这里是父窗体接收该信号。
4)选择信号,并编辑信号的槽
5)如果没有,可以自己添加槽
6)编辑完成后的界面,保存后退出。
7)接下来就是编辑槽slot_quit
回到VS2013,在信号接收方头文件定义该方法,记住要在代码“privat slots:"下面。
然后在cpp文件中实现该方法
运行结果:
注:
如果你很熟悉信号槽的绑定原理,也可手动连接信号/槽,在setupUi里面添加如下代码:
QObject::connect(pushButtonquit, SIGNAL(clicked()), MultiThread_testClass, SLOT(slot_quit()));
参数分别是信号发送方,信号,信号接收方,槽。