Qt Creator中CDB中QObject的objectName在哪里?

时间:2018-09-11 16:14:50

标签: qt debugging qt5 qt-creator signals-slots

我经常发现自己正在调试信号和插槽,这意味着我正在研究Qt源代码。我目前正在努力确定向Qt类插槽发送信号的发送者。在我自己的类中,我只需要在插槽中插入auto test = QObject::sender();行并从那里进行调试,但对于Qt类的插槽,则没有该选项。

我已经在CDB调试窗口中四处搜寻[d]d_ptr[parent]等,而根本找不到发件人的objectName或className。

Screenshot of debug window

在哪里?我如何找到它?我似乎永远无法让Expression评估程序在Qt Creator中工作,所以这不是一个选择。

Qt版本是5.11.1和Qt Creator 4.7.0。

1 个答案:

答案 0 :(得分:2)

设置中有一个复选框:Debugger > Locals & Expressions > Show QObject names if available。然后,您应该在对象旁边的“值”列中看到它。

或者您可以在QObject的数据中查找它:

enter image description here