我是 wxWidgets 的新手。到目前为止,最令我沮丧的是,有时在我通过编译并尝试运行 GUI 应用程序后,它的行为并不像我设计的那样,我不知道它有什么问题。有人建议我试试 GDB,但我找不到 GDB 的教程如何调试 wxWidgets。
我想知道有人可以给我一些链接,或者教我怎么做(主要是关于如何触发事件并停下来查看并继续运行)。
最佳答案
wxWidgets 最常见的两个问题似乎是:
- 使用 sizer 时的布局问题。
- 事件处理问题。
尝试使用调试器解决 (1) 是个坏主意。如果确实需要,您可以跟踪布局算法,但它可能只有在您已经知道该算法如何工作时才能很好地工作——因此一开始就不太可能出现此类问题。如果您刚刚开始使用 sizer,最好尝试在一些可视化对话框编辑器工具中重新创建您的布局。
对于 (2),明显的建议是在您的事件处理程序中放置一个断点(请参阅 gdb break
命令)。至少,这为您提供了一种可靠的方法来检查您的事件处理程序是否被调用。
否则我真的不认为有任何 wxWidgets 特定的调试技巧。使用来自 misc/gdb/print.py 的 pretty-print wxWidgets 源中包含的文件很方便,但为此您需要一个支持 Python 的 gdb。
关于c++ - 如何在Wxwidgets中调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16288457/