Python的GUI包有不少,easyGUI可能更加適合新手,可是Tkinter包做爲一個官方自帶的包,功能強大,也比較易於上手。本文將對Tkinter的使用有一個初步的講解。編程
下面是Python官網關於Tkinter的介紹ide
Tkinter is Python's de-facto standard GUI (Graphical User Interface) package. It is a thin object-oriented layer on top of Tcl/Tkoop
Tkinter is not the only GuiProgramming toolkit for Python. It is however the most commonly used one. CameronLaird calls the yearly decision to keep TkInter "one of the minor traditions of the Python world."ui
因爲Tkinter是內置的模塊,因此咱們能夠直接引用code
import tkinter
學編程的都知道有個門路:入門從Hello World寫起。那麼讓咱們先看一下官方上的入門程序:事件
import tkinter from tkinter.constants import * tk = tkinter.Tk() frame = tkinter.Frame(tk, relief=RIDGE, borderwidth=2) frame.pack(fill=BOTH,expand=1) label = tkinter.Label(frame, text="Hello, World") label.pack(fill=X, expand=1) button = tkinter.Button(frame,text="Exit",command=tk.destroy) button.pack(side=BOTTOM) tk.mainloop()
在Python終端中運行,就會有下面的結果!ci
這樣,第一個Hello World程序就運行完成了it
固然,若是上面的代碼你不是一塊兒複製進終端,而是在IDLE中,經過交互式界面一行一行輸入,便會發如今最後一句tk.mainloop()
這個語句執行以前,窗體並無生成。但這句話一執行以後,窗體就生成了,一切都能正常運行。這是爲何呢?爲何執行tk = tkinter.Tk()這個語句時,就沒有直接生成一個窗體呢?io
其實,tk.mainloop()的做用是重建窗體,而且開始檢測事件。而以前的語句就是爲創建窗體循環作準備。GUI編程與控制檯編程有點不同,它至關因而個死循環,只不過在檢測到退出的事件,或者整個窗體被銷燬,纔會結束。入門
那麼最基礎的HelloWorld程序就到這裏結束了,關於這裏面的tk窗體,frame,label,button組件,還有pack等方法將在以後介紹。