Python-02 可視化之tkinter介紹

1 控件介紹

  1.1 Label

import tkinter as tk  # 使用Tkinter前需要先導入
window = tk.Tk()
window.title('My Window')
window.geometry('500x300')  # 長寬 500x300
l = tk.Label(window, text='Hello!this is Tkinter', bg='yellow', font=('Arial', 12), width=30, height=2)
# 說明: bg為背景,font為字體,width為長,height為高,這裡的長和高是字符的長和高,比如height=2,就是標籤有2個字符這麼高

# 放置標籤
l.pack()  # Label內容content區域放置位置,自動調節尺寸
# 放置lable的方法有:1)l.pack(); 2)l.place();
window.mainloop()
# 注意,loop因為是循環的意思,window.mainloop就會讓window不斷的刷新,如果沒有mainloop,就是一個靜態的window,傳入進去的值就不會有循環,mainloop就相當於一個很大的while循環,有個while,每點擊一次就會更新一次,所以我們必須要有循環
# 所有的窗口文件都必須有類似的mainloop函數,mainloop是窗口文件的關鍵的關鍵。

  1.2 Button

import tkinter as tk
window = tk.Tk()
window.title('My Window')
window.geometry('500x300')  
# 在圖形界面上設定標籤
var = tk.StringVar()  # 將label標籤的內容設置為字符類型,用var來接收hit_me函數的傳出內容用以顯示在標籤上
l = tk.Label(window, textvariable=var, bg='green', fg='white', font=('Arial', 12), width=30, height=2)
l.pack()
on_hit = False

def hit_me():
    global on_hit
    if on_hit == False:
        on_hit = True
        var.set('you hit me')
    else:
        on_hit = False
        var.set('')
# 在窗口界面設置放置Button按鍵
b = tk.Button(window, text='hit me', font=('Arial', 12), width=10, height=1, command=hit_me)
b.pack()
# 主窗口循環顯示
window.mainloop()

  1.3 Entry和Text 示例

 1 # Entry 和 Text 輸入框 和文本框
 2 import tkinter as tk
 3 
 4 window = tk.Tk()
 5 window.title("My window")
 6 window.geometry("200x200")
 7 
 8 e = tk.Entry(window,show=None)  # if "*" will show 密碼形式
 9 e.pack()
10 
11 def insert_point():
12     var = e.get()
13     t.insert('insert',var)
14 
15 def insert_end():
16     var = e.get()
17     # t.insert('end',var)
18     t.insert(2.2,var)
19 
20 b1 = tk.Button(window,text="insert point",width=15,
21               height=2,command=insert_point)
22 b1.pack()
23 
24 b2 = tk.Button(window,text="insert end",
25                command=insert_end)
26 b2.pack()
27 
28 t = tk.Text(window,height=2)
29 t.pack()
30 
31 window.mainloop()

  1.4 ListBox

 

2

Tags: