3个回答
展开全部
Qt的信号槽是支持一对多,等于说同一个信号可以同时触发多个槽函数,使用方法就是把同一个信号绑定到需要执行的槽函数即可:
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded1()));
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded2()));
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded3()));
另外信号槽绑定的对象,还是可以是信号-》信号
connect(sender, SIGNAL(clicked()), recver, SIGNAL(aclicked()));
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded1()));
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded2()));
connect(sender, SIGNAL(clicked()), recver, SLOT(sltclickeded3()));
另外信号槽绑定的对象,还是可以是信号-》信号
connect(sender, SIGNAL(clicked()), recver, SIGNAL(aclicked()));
展开全部
执行完 在 执行一次
信号函数的实现在MOC 文件中,自动生成的。。其实就是 去 一个列表找 相应的槽函数 执行
你发两个信号 槽函数执行两次。。。
加个标记 ,控制下 不然 会出问题
bool slotIsRuning
myslot(){
slotIsRuning = ture
.......
slotIsRuning = false
}
........
if(!slotIsRuning )
emit MySignal();
信号函数的实现在MOC 文件中,自动生成的。。其实就是 去 一个列表找 相应的槽函数 执行
你发两个信号 槽函数执行两次。。。
加个标记 ,控制下 不然 会出问题
bool slotIsRuning
myslot(){
slotIsRuning = ture
.......
slotIsRuning = false
}
........
if(!slotIsRuning )
emit MySignal();
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
发信号没有什么给多个槽发,你可以connect时,将该信号关联多个槽就行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询