我想學習Python並在Python中嘗試一些GUI,並遇到了這個Tkinter模塊。我的代碼運行,但運行時不會顯示窗口。我的代碼如下Python Tkinter模塊沒有顯示輸出
#GUI
#from Tkinter import *
from Tkinter import *
#to create a root window
root = Tk()
任何幫助,將不勝感激。該程序運行,不給出錯誤,但從/窗口不顯示
我想學習Python並在Python中嘗試一些GUI,並遇到了這個Tkinter模塊。我的代碼運行,但運行時不會顯示窗口。我的代碼如下Python Tkinter模塊沒有顯示輸出
#GUI
#from Tkinter import *
from Tkinter import *
#to create a root window
root = Tk()
任何幫助,將不勝感激。該程序運行,不給出錯誤,但從/窗口不顯示
將此添加到您的代碼root.mainloop()
,Here's a tutorial。
在回答您的評論
#GUI
#from Tkinter import *
from Tkinter import *
#to create a root window
root = Tk()
w = Label(root, text="Hello, world!")
w.pack()
root.mainloop()
末添加root.mainloop()
。
正如其他答案指出的那樣,您需要在根對象上調用mainloop
。
我推薦節目的OO風格,我也建議不做一個全球進口(即:不「從Tkinter的進口*」)。
這裏有一個模板,我通常開出:
import Tkinter as tk
class ExampleView(tk.Frame):
def __init__(self, root):
tk.Frame.__init__(self, root)
l = tk.Label(self, text="your widgets go here...", anchor="c")
l.pack(side="top", fill="both", expand=True)
if __name__=='__main__':
root = tk.Tk()
view = ExampleView(root)
view.pack(side="top", fill="both", expand=True)
root.mainloop()
這很容易讓你的主要邏輯在文件的開頭,並保持根和mainloop
呼叫的建立起來,我認爲這使代碼更容易理解。它也使得重用這段代碼變得更容易一些(即:你可以創建一個更大的程序,這是可以創建的幾個窗口之一)
那是你所有的代碼嗎?嘗試在最後添加'root.mainloop()'。 –
是的,現在workinng現在謝謝...但是我應該把我的按鈕放在root.mainloop()之後? – user1581917