您的位置:首页 > 编程语言 > Qt开发

每日一笔记之3:QTconnect()

2015-11-09 16:47 513 查看
刚学习QT的时候,跟着教程做一些简答的实验,教程简单的界面使用UI文件,直接在界面上拖一个按键,在右键go to slot,在编写槽函数。

我以前没学过C++,一直以为这个自动跳转过去的slot函数是一个虚函数,只是在这儿reinpliment而已。今天尝试自己通过纯代码编写,找了半天也没找到这个所谓的虚函数原型。

百度了才知道这个void on_pushbutton_clicked()不是已经声明的虚函数,而是按照这种格式写的函数不需要connect,用的是另外一个函数,在ui_mainwindow.h这个文件中,名字叫connectSlotsByName
详细说明:
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:

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();
QMetaObject::connectSlotsByName(MainWindow);

大神们都不推荐这么使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: