我正在尝试调试python tkinter应用程序,但我注意到调试器在到达tkinter的mainloop()方法时刚刚停止工作。
尽管我的应用程序按预期运行,但与它的交互似乎并未更新调试器或变量值。在四处搜寻之后,我发现关于该主题的信息很少,而且由于核心库是用C编写的,因此在mainloop中无法调试tkinter应用。
肯定有一些解决方法?
此刻,我发现自己不得不手动调试tkinter应用程序上的每个交互,随着我的应用程序变得越来越复杂,这非常浪费时间并且效率低下。
答案 0 :(得分:0)
不要在主循环之前放置断点。在要调试的动作中添加断点,例如按钮命令:
def command():
print("hello") # <-- breakpoint here
tk.Button(frame,
text="Hello",
command=command)
然后调试器可以在此处停止。