2011-02-16 66 views
1

使用Ubuntu時,我可以通過在IDLE中編寫命令來實時播放Tkmainloop防止Tkinter應用程序從空閒模式運行

在Windows上,我需要撥打root.mainloop()來產生一個窗口,並且該循環讓我無法運行IDLE的任何代碼。

這是平臺的問題,還是我做錯了什麼?

+0

無論在2011年有關IDLE和Windows的事情現在都不是真的。我經常通過不添加`mainloop()`來與IDLE交互式地玩tkinter。 `>>>將tkinter導入爲tk; root = tk.Tk()`產生一個空白的tk窗口。 – 2015-12-05 19:49:25

回答

1

我沒有一個完整的解決方案或答案,但這裏的東西,我的對象體內發現:

從這個頁面:Thinking in Tkinter

請注意,您不應該運行在這些程序閒。 IDLE本身就是一個Tkinter應用程序,它有自己的「mainloop」,它將與這些程序中的主循環相沖突。如果您真的想要使用IDLE查看和運行這些程序,那麼對於每個程序,您應該在運行之前註釋掉程序中的「mainloop」語句。

我不太確定它背後的技術原因 - 但我不會運行IDLE的Tkinter代碼。

+0

我有一個解決方案:您可以通過定義所有幾何圖形並在主窗口上調用update()來預覽應用程序窗口。感謝您的洞察力,從現在開始我會牢記這一點。 :) – 2011-03-27 11:38:50