首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

connect函数跟disconnect是否有必要成对使用

2013-09-27 
connect函数和disconnect是否有必要成对使用?问题描述:若执行这段代码“connect(sendBtn, SIGNAL(clicked()

connect函数和disconnect是否有必要成对使用?
问题描述:
若执行这段代码“connect(sendBtn, SIGNAL(clicked()), this, SLOT(sendMsg()));”n次的话,当点击一下sendBtn按钮时,sendMsg()就会被执行n次...
我不太了解信号和槽机制的内部实现机制,不过从这个现象来看,当sendBtn被点击后,系统会遍历clicked()信号所维护的与槽(信号)的联系表,来执行相应的槽(信号)函数。因为上面的connect的函数执行了n次,且槽函数均为sendMsg(),所以就执行了n次。

麻烦高手指教下connect函数和disconnect函数都做了哪些工作? connect disconnect 信号和槽
[解决办法]
会不会是你的线程跑了N次了,导致一次按下button,实际触发了N次clicked()
[解决办法]
你认为Qt会这样实现吗,或者说你认为这样现实的库会有人用吗?

引用:
问题描述:
若执行这段代码“connect(sendBtn, SIGNAL(clicked()), this, SLOT(sendMsg()));”n次的话,当点击一下sendBtn按钮时,sendMsg()就会被执行n次...
我不太了解信号和槽机制的内部实现机制,不过从这个现象来看,当sendBtn被点击后,系统会遍历clicked()信号所维护的与槽(信号)的联系表,来执行相应的槽(信号)函数。因为上面的connect的函数执行了n次,且槽函数均为sendMsg(),所以就执行了n次。

麻烦高手指教下connect函数和disconnect函数都做了哪些工作?

[解决办法]
这种不都是一次性的嘛,signal是clicked,slot是sendMsg。怎么会有这么多次执行

看看信号-槽的讲解就好。这玩意每个人理解起来不一样。

热点排行