嘿,大家好!上次我們實作出了一個簡單的視窗,雖然有點空蕩蕩,但至少它會乖乖出現對吧?這次我們要讓它變得熱鬧一點,丟幾個實用的「元件」(就是按鈕、文字框之類的東西)進去,讓我們的視窗開始有點互動的感覺。準備好了嗎?來啦!
元件是啥?為啥重要?
在 Tkinter 裡,元件(Widgets)就是那些你能在視窗裡看到的東西,像按鈕(Button)、標籤(Label)、輸入框(Entry)等等。它們是視窗的靈魂,讓你可以跟程式「溝通」。沒這些元件,視窗就像個空殼,完全沒戲唱啊!今天我們要玩三個最基本的:
- Label:放文字的地方,像是個小告示牌。
- Button:按下去會做事的那個按鈕。
- Entry:讓你輸入文字的小框框。
這些是 Tkinter 的「基本三兄弟」,學會它們你就跨出一大步啦!
先來個簡單的:加個標籤
我們先從最簡單的 Label 開始,丟個文字進視窗裡瞧瞧:
import tkinter as tk
# 開個視窗
window = tk.Tk()
window.title("我的互動視窗")
window.geometry("300x200")
# 加個標籤
label = tk.Label(window, text="哈囉,我是標籤!")
label.pack() # 用 pack() 放進視窗
window.mainloop()
跑一下看看,視窗裡是不是多了一行「哈囉,我是標籤!」?

tk.Label(window, text="...")
:這就是在視窗(window)裡創建一個標籤,文字自己定。pack()
:這招是告訴標籤「你給我乖乖排好」,它會自動出現在視窗裡,通常是靠上居中。
想讓標籤更帥一點?可以改改樣子:
label = tk.Label(window, text="哈囉,我很酷!", font=("微軟正黑體", 16), fg="blue", bg="yellow")
label.pack()
這下標籤變成藍字黃底,還用 16 號的微軟正黑體,是不是有點活潑起來了?

加個按鈕:點下去有反應
光看文字有點無聊,我們來加個按鈕,讓它被按的時候能耍點花樣:
import tkinter as tk
def button_click():
label.config(text="你按我啦!") # 按鈕被按時,標籤文字會變
# 開視窗
window = tk.Tk()
window.title("按鈕測試")
window.geometry("300x200")
# 標籤
label = tk.Label(window, text="按按看下面")
label.pack()
# 按鈕
button = tk.Button(window, text="點我", command=button_click)
button.pack()
window.mainloop()
跑起來後,點一下「點我」,標籤就變成「你按我啦!」了!

按鈕點擊前

按鈕點擊後
tk.Button(window, text="...", command=...)
:創建按鈕,command 後面接的是按下去要跑的函式。label.config(text="...")
:這招能動態改標籤的內容,超實用。
輸入框:讓你說話
最後來個 Entry,讓我們可以輸入東西:
import tkinter as tk
def show_input():
text = entry.get() # 拿到輸入框的內容
label.config(text=f"你輸入的是:{text}")
# 開視窗
window = tk.Tk()
window.title("輸入測試")
window.geometry("300x200")
# 標籤
label = tk.Label(window, text="請輸入點什麼")
label.pack()
# 輸入框
entry = tk.Entry(window)
entry.pack()
# 按鈕
button = tk.Button(window, text="送出", command=show_input)
button.pack()
window.mainloop()
試試看!輸入點東西(比如「工程師」),按下「送出」,標籤就會顯示「你輸入的是:工程師」。

tk.Entry(window)
:創建一個輸入框。entry.get()
:抓出輸入框裡的文字。
玩一玩:自己動手
好了,現在輪到你啦!試著寫個小程式,做到這些:
- 視窗標題設成「我的小玩具」。
- 加一個標籤,寫上「歡迎來玩」。
- 加一個輸入框,讓人可以輸入名字。
- 加一個按鈕,按下去時標籤會變成「嗨,[輸入的名字]!」。
做完跑跑看,輸入自己的名字試試,是不是很有成就感?

結語
今天我們放了一些元件在視窗內:標籤會說話,按鈕會動,輸入框還能聽你講話。這些元件就像視窗的小助手,讓它從空殼變成能互動的工具。怎麼樣,覺得 Tkinter 越來越有趣了吧?
下次我們要聊「佈局管理」,教你怎麼把這些元件排得漂漂亮亮的,不再亂七八糟,我們下篇見啦!