QT中代码中与设计器中控件信号与SLOT连接(原来还可以这样连接)



双击testqt.ui

托一个push button到窗体中,双击,可以输入字符

按F4或 menu->edit->edit signals/slots 定义SLOT


选择已定义好的SLOT,点确定就可以进行关联了。
定义自定义SLOT:
点上面对话框中的EDIT按钮,弹出:


注意这里自定义的slot必须是
on_<object name>_<signal name>(<signal parameters>)
格式。

然后再在testqt.h头文件中加入下面声明:
public slots:
void on_testQt_clicked ();
在testqt.cpp中加入函数实现:
void testQt::on_testQt_clicked ()
{
QMessageBox msg;
msg.setText("ok");
msg.exec(); //模式对话框,show显示非模式对话框
}
编译后,你可以在ui_testqt.h头文件中看到
QObject::connect(pushButton,SIGNAL(clicked()),testQtClass,SLOT(on_testQt_clicked ()));
QMetaObject::connectSlotsByName(testQtClass);
例如UI里新建了一个openButton,在.h文件里声明void on_openButton_clicked()函数并在cpp文件里添加这个函数的定义后,seupUi()就可以自动将openButton的clicked信号与我们定义的slot函数联系在一起了!
我们的.ui文件自动生成的ui_mainwindow.h文件里的代码总会有一句:
QMetaObject::connectSlotsByName(MainWindowClass);
它就是用来自动识别我们所有界面控件的信号槽的,但必须是以下面的格式。
void QMetaObject::connectSlotsByName ( QObject * object ) [static]
Searches recursively for all child objects of the given object, and connects matching signals from them to slots of object that follow the following form:
public slots:
void on_<object name>_<signal name>(<signal parameters>);
Let's assume our object has a child object of type QPushButton with the object name button1. The slot to catch the button's clicked() signal would be:
void on_button1_clicked();
http://blog.csdn.net/kl222/article/details/7739141
QT中代码中与设计器中控件信号与SLOT连接(原来还可以这样连接)的更多相关文章
- VS编程,编辑WPF过程中,点击设计器中界面某一控件,在XAML中高亮突出显示相应的控件代码的设置方法。
原文:VS编程,编辑WPF过程中,点击设计器中界面某一控件,在XAML中高亮突出显示相应的控件代码的设置方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net ...
- ANNdotNET中的视觉神经网络设计器
ANNdotNET简介 是一个在.net平台上进行深度学习的开源项目.NET Framework和.NET Core).该项目位于http://github.com/bhrnjica/anndotne ...
- android 获取屏幕的高度和宽度、获取控件在屏幕中的位置、获取屏幕中控件的高度和宽度
(一)获取屏幕的高度和宽度 有两种方法: 方法1: WindowManager wm = (WindowManager) getContext().getSystemService(Context.W ...
- qt设计器中使用自定义控件
当qt设计器中的控件不能满足需要时,这时就要自定义控件.然后再在qt设计器中使用. 在qt设计器中使用自定义控件时,可以用提升. 从控件派生出新的类: 然后在qt设计器中右键需要提升的控件: 填入提升 ...
- ActiveReports 9 新功能:可视化查询设计器(VQD)介绍
在最新发布的ActiveReports 9报表控件中添加了多项新功能,以帮助你在更短的时间里创建外观绚丽.功能强大的报表系统,本文将重点介绍可视化数据查询设计器,无需手动编写任何SQL语句,主要内容如 ...
- How to: Create a Business Model in the XPO Data Model Designer 如何:在 XPO 数据模型设计器中创建业务模型
This topic provides step-by-step instructions on how to use the XPO Data Model Designer in XAF appli ...
- Qt编写自定义控件属性设计器
以前做.NET开发中,.NET直接就集成了属性设计器,VS不愧是宇宙第一IDE,你能够想到的都给你封装好了,用起来不要太爽!因为项目需要自从全面转Qt开发已经6年有余,在工业控制领域,有一些应用场景需 ...
- Qt开发环境中使用报表控件FastReport遇到的一些问题(一)
FastReport是一款优秀的报表控件,由俄罗斯开发,国内有代理商.Qt环境下可实现报表功能的还有一款叫NCReport,也是收费控件,比较来比较去还是觉得前者功能强点.网上讲解此控件在Qt中使用的 ...
- Qt与PyQT中设置ToolBar在AllowedArea的显示
因为个人对传统的软件GUI界面不是太喜欢,最近又在学习Qt和PyQt5,所以就有了设置ToolBar在窗口的不同地方的想法,经过浪里淘沙,最终在Qt官网里找到了,原来再添加toolBar的时候是由设置 ...
随机推荐
- strcat()的编写
1.strcat() #include <windows.h> #include <assert.h> #include <iostream> //strcat() ...
- JavaScript中的Math.ceil()、Math.round()、Math.floor()
1. Math.ceil():向上取整(指取大于该浮点数的最小整数) 2. Math.round():四舍五入取整(注意:当该浮点数距离两端整数一样时,取较大的那个整数,如Math.round(-1. ...
- jQuery学习-事件之绑定事件(四)
今天我们来学习jQuery.Event对象.jQuery为了添加自己的处理机制,及可以传递用户自定义数据,于是Event对象就出世了. 1 jQuery.Event = function( src ...
- 论山寨手机与Android 【15】结束语
去年11月,与人讨论山寨版Android智能手机的前景,最初觉得这个问题很容易回答.但是三言两语之后,不仅听者茫然,而且言者自己也意识到条理紊乱,说服力不强.于是决定写几篇文章,把这个问题展开说说.所 ...
- 开源语音识别系统 Simon
http://www.lupaworld.com/proj.php?mod=view&cid=&id=824 语音识别系统 Simon:Simon 是一个开源的语音识别系统,它不仅可以 ...
- IRC配置for open source community
IRC是开源社区进行交流使用的一个很重要的工具. 但是很多公司有限制,不让在办公电脑上, 安装IRC的客户端. ZNC + weechat 是一个可以替代的 选择. irccloude 也是一个可替代 ...
- Aix6.1安装openssh
一.软件下载 1.官方网站下载: openssl IBM官方网站下载:https://www14.software.ibm.com/webapp/iwm/web/reg/download.do?sou ...
- deal with 'non-admin area' warn
We usually use the follow code to delete product in Magento $product = Mage::getSingleton('catalog/p ...
- Neutron数据库同步错误 NotImplementedError: No support for ALTER of constraints in SQLite dialect
错误信息 root@controller:~# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron. ...
- java web从零单排第十七期《struts2》数据标签库(1)
1.s:action标签: 此标签的作用是在JSP页面中访问action类的数据,执行某些操作,并返回相应的数据.其属性及意义如下: 属性名 是否必需 默认值 类型 说明介绍 executeResul ...