我知道Qt信号被放入事件队列,然后在事件循环看到它时调用连接的插槽。因此,在调试时“介入”它是没有意义的。但我真的很想看到,在一个足够大的应用程序中,我不能一次记住所有的东西,控制流在哪里结束。
那么,有没有一种方法可以找到连接到信号的插槽,或者潜在地基于
connect(...);
还是在调试的时候?
在Qt Creator 3.5.1中(基于Qt 5.5.1(GCC 5.2.1 20151129,64位)):
-
Ctrl+Shift+U
(查找用法)仅返回
emit signal();
在源和
void signal();
-
如果它也能回来,那就太好了
connect(..., SIGNAL(signal()), ..., SLOT(slot()));
这样我就可以
F2
(转到定义)on
slot()
然后放一个
breakpoint
在它里面。
-
纯文本搜索返回一组在其他类中具有相同名称的不相关信号,因此这也没有真正的帮助。