Python的Tkinter庫總結(1)

NULL_M發表於2018-09-24

tkinter框架的基本結構

基本框架

一個基本的tkinter框架應該包含如下部分:

  • 匯入tkinter庫
  • 建立一個視窗,調整視窗的引數
  • 設定Widgets(控制元件)
  • 載入視窗主迴圈,讓視窗顯示

程式碼如下:

import tkinter as tk
#建立視窗
window = tk.Tk()
#設定視窗屬性
window.title('window xp')
window.geometry('500x300')  #注意,500和300中間是小寫字母x
#設定控制元件
quitButton = tk.Button(window, text = 'Quit', command = window.quit)
quitButton.grid()
#開啟視窗主迴圈
window.mainloop()

按類定義的框架

按類定義框架需要包含以下幾個部分:

  • 匯入tkinter庫
  • 定義主類
    • 主類從Frame類繼承
    • 主類初始化
      • 初始化Frame框架
      • 建立佈局
      • 呼叫建立控制元件的方法
    • 定義建立控制元件的方法
  • 建立主類物件,設定物件視窗屬性
  • 載入物件視窗主迴圈,讓視窗顯示

程式碼如下:

import tkinter as tk
#定義主類
class App(tk.Frame): #從Frame類繼承

    #主類初始化
    def __init__(self, master = None):
        #初始化框架
        tk.Frame.__init__(self, master)
        #建立佈局
        self.grid()
        #呼叫建立控制元件的方法
        self.createWidgets()

    #定義建立控制元件的方法
    def createWidgets(self):
        #建立一個按鈕
        self.quitButton = tk.Button(self, text = 'Quit', command = self.quit)
        self.quitButton.grid()

#建立一個物件
app = App()
#設定物件視窗屬性
app.master.title('window xp')
app.master.geometry('500x300')
#開啟物件視窗主迴圈
app.mainloop()

小型視窗的建立只需要使用最基本的框架即可,但是如果需要建立的視窗過於複雜,還是應該選擇基於類來建立視窗,便於除錯。

主視窗常用引數

window = tk.Tk() #生成主視窗
window.title('name') #修改主視窗標題,也可以在建立時用className引數命名
window.geometry('500x300') #指定主視窗大小
window.resizable(0,0) #視窗大小的可調性,分別表示x,y方向的可變性(預設完全可調)
window.quit() #退出視窗
window.update_idletasks() #重新整理控制元件的事件
window.update() #重新整理頁面

相關文章