发送一次信号槽函数多次响应

来源:互联网 发布:淘宝上怎么买到电视棒 编辑:程序博客网 时间:2024/05/22 01:45

QT connect出现重复调用现象(执行两次SLOT函数)


QT在设置信号与槽的时候出现执行两次槽函数

修改方法:

将 connect(ui.messageButton,SIGNAL(pressed()),this,SLOT(on_messageButton_clicked()));

更改为:

connect(ui.messageButton,SIGNAL(pressed()),this,SLOT(on_messageButton_clicked()),Qt::UniqueConnection);


原理:

Qt信号槽给出了五种连接方式



发出信号,调用槽的方式也可以简单的分为两种:同步调用和异步调用

同步调用:发出信号后,当前线程等待槽函数执行完毕后才继续执行。

异步调用:发出信号后,立即执行剩下逻辑,不关心槽函数什么时候执行。

所以有下表: 






阅读全文
0 0