QT信号槽连接方式

来源:互联网 发布:图书管理系统php价格 编辑:程序博客网 时间:2024/05/22 00:49
QT中,连接信号槽的方法:
1、QMetaObject::connectSlotsByName(MainWindow); 
“connectSlotsByName”即“按空间名称关联槽”的方式进行关联,对应的函数必须写成“on_控件名_信号名”的格式;

由于connect是字符匹配,所以信号名应大小写一致, 

这时槽函数的函数名是固定的。
2、 QObject::connect(action_V, SIGNAL(triggered()), textEdit, SLOT(paste())); 

信号与槽的函数形参应当一致。 

注:如果采用显式 connect的方法(方法2)的同时,又将槽函数的名字起成了“on_控件名_信号名”的格式,那么就会在运行时弹出 “QMetaObject::connectSlotsByName: No matching signal for”的警告了! (并不影响实际功能)

QT信号槽函数不响应解决办法:
使用方法一时要注意检查信号源和函数名是否正确,函数名大小写都要一致。
使用方法二时要注意检查信号源、信号类型、函数形参等。
1 0
原创粉丝点击