函数重载:
连接函数后多种重载方法,常用的有:
函数4个参数:发射信号的对象,发射的信号,接受信号的对象,要执行的槽;
//按键单击信号连接到按键槽函数
//方法1:
connect(ui->pushButton,SIGNAL(clicked(bool)),this,SLOT(on_pushButton_clicked()));
//方法2:
connect(ui->pushButton,&QPushButton::clicked,this,&Widget::on_pushButton_clicked);
1:首先要链接的两个类必须继承于QObject,同时添加Q_OBJECT。
2:在QT中的QObject ::连接中填写的信号和槽函数,一定要填写参数类型。
因为类中的函数可以,也就是,重载函数名一样,参数不一样,如果的QObject ::连接中的函数没有参数类型,则无法正确连接
3:QObject :: connect中的signal和slot函数一定要有参数类型,但是,不可以有参数:
指定信号和方法时,必须使用SIGNAL()和SLOT()宏,例如:
QLabel *label = new QLabel;
QScrollBar *scrollBar = new QScrollBar;
QObject::connect(scrollBar, SIGNAL(valueChanged(int)), label, SLOT(setNum(int)));
此示例确保标签始终显示当前滚动条值。请注意,signal和slots参数不能包含任何变量名,只能包含类型。例如,以下不起作用并返回false:
// WRONG -- 必须有参数类型,但是不能有变量名
QObject::connect(scrollBar, SIGNAL(valueChanged(int value)), label, SLOT(setNum(int value)));
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- hids.cn 版权所有 赣ICP备2024042780号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务