2016-02-23 151 views
0

我知道如何调试控制台程序,但如果程序有GUI? 例如,有一个Calc图标,当我按下它时,它会调用一些方法。 我想知道它会调用什么方法。我有源代码,但不知道哪个文件对应于哪个文件,并且想要回溯它将执行的代码,如果我点击该图标。如何使用gdb调试GUI程序

+1

如果您没有源代码级别的调试,典型的GUI框架将是一场噩梦。获取源代码(理想情况下,是一个'真正的'IDE调试器:)。 –

回答

2

从概念上讲,调试GUI应用程序和控制台应用程序没有任何区别 - 它们都是程序性编程 - 某些操作调用特定的函数。操作的触发器是按下GUI上的按钮还是在控制台中键入命令没有区别。你可以为它们使用调试器(可视或命令行)。

如果你有源代码,并且知道触发机制是什么,应该很容易在源代码中查看哪些函数被触发器调用(例如,不在运行时)。您的问题标记为Qt,它使用connect函数将'信号'(事件)连接到其他信号或'插槽'。这实质上是将一个回调函数与一个特定的事件关联起来,因此,搜索源代码将是一个很好的起点。