CodeGym /課程 /Python SELF TW /用 Tkinter 創建帶有用戶互動的應用程式基本窗口

用 Tkinter 創建帶有用戶互動的應用程式基本窗口

Python SELF TW
等級 49 , 課堂 1
開放

1. 創建應用程式主窗口

今天我們將踏上用 Tkinter 庫探索圖形用戶界面世界的激動人心的旅程。 在這堂課結束後,你的 PC 不再僅僅是一個金屬盒子,而是變成了真正的魔法師,它不僅能計算,還能愉快地將結果顯示給用戶看。準備好系好安全帶,我們開始構建第一個基本應用程式窗口!

讓我們從創建應用程式的主窗口開始。在 Tkinter 中,這非常簡單。我們將使用 Tk() 函數來創建一個主窗口的實例——這就像 GUI 世界中的傳統 "Hello, World!"。


import tkinter as tk

# 創建應用程式實例
root = tk.Tk()

# 設定窗口標題
root.title("我的第一個應用程式")

# 啟動主循環
root.mainloop()
    

這裡發生了什麼?

  1. 匯入 Tkinter: 首先匯入 tkinter 庫。為了方便,我們將它匯入為 tk(因為程序員就是愛簡寫)。
  2. 創建窗口: 我們創建了一個名為 root 的對象,這是應用程式的主窗口。想像這個窗口是它的 "心臟",沒有它應用程式就無法運行。
  3. 窗口標題: 使用方法 title() 設置我們窗口的標題,讓用戶知道這是什麼。在這個例子中,我們的標題是 "我的第一個應用程式"。
  4. 主循環 (mainloop()): 這是啟動事件處理的核心。當循環運行時,我們的窗口會保持在螢幕上,等待用戶的互動。

逐步指南

  1. 創建主窗口: 每個界面都從創建主窗口開始。

    
    root = tk.Tk()
    root.title("基本窗口")
                

    耶!你剛剛邀請了一個窗口進入你的生活。希望你有窗簾!

  2. 設置窗口參數: 給它一些個性化設置。

    
    root.geometry("800x600")  # 寬度 x 高度
    root.iconbitmap('icon.ico')  # 可以選擇自己的圖標文件
                
  3. 應用程式主循環: 確保窗口不會一閃而過,我們啟動主循環。

    
    root.mainloop()
                

應用程式主循環

現在我們有了一個窗口,讓我們談談主循環 mainloop()。它像是你的派對上的隱形 DJ——當它在旋轉音樂,一切都井然有序。 主循環永遠保持警覺,確保應用程式運行並對用戶的行動做出反應, 如滑鼠點擊或鍵盤輸入。

如果沒有這個循環,你的應用程式只會顯示一個空窗口並直接結束。所以別忘了在每個 Tkinter 腳本的最後加上它!

2. 認識小工具

Tkinter 提供了許多小工具,每個都有它的特殊功能。讓我們來認識其中一些。

Tkinter 的主要小工具

  • 窗口 (Window): 所有小工具的主要空間。
  • 按鈕 (Button): 一個可以點擊的互動元素。
  • 輸入框 (Entry): 用於輸入單行文字的文本框。
  • 標籤 (Label): 用於顯示文本或圖像。
  • 文本框 (Text): 用於多行文字的輸入和顯示。

小工具的使用範例

這裡是個簡單的範例,展示如何創建一個帶按鈕與標籤的簡單窗口:


import tkinter as tk

def say_hello():
    label.config(text="你好,世界!")

root = tk.Tk()
root.title("我的第一個應用程式")

label = tk.Label(root, text="按下按鈕")
label.pack(pady=10)

button = tk.Button(root, text="點我", command=say_hello)
button.pack(pady=5)

root.mainloop()
    

運行此代碼後,你會看到一個帶有標籤和按鈕的窗口。按下按鈕——標籤會向世界打招呼!

3. 在窗口中添加小工具

現在我們已經有了一個簡單的窗口(是的,目前為止這是我們的傲人成果),讓我們為它添加一些小工具。小工具是用戶界面的元素,例如按鈕、標籤、輸入框等。我們從簡單的開始:創建一個按鈕和一個標籤。


# 匯入 tkinter 庫
import tkinter as tk

# 創建應用程式主窗口
root = tk.Tk()
root.title("我的第一個應用程式")

# 創建標籤並放置到窗口中
label = tk.Label(root, text="你好,用戶!歡迎來到我的第一個 GUI。")
label.pack()  # 使用 pack 方法放置小工具

# 創建按鈕並放置到窗口中
button = tk.Button(root, text="點擊我!", command=lambda: print("按鈕被按下了!"))
button.pack()

# 啟動主循環
root.mainloop()
    

解釋

  1. 標籤 (Label): 我們用 Label() 創建了一個帶有文本 "你好,用戶!歡迎來到我的第一個 GUI。" 的標籤。末尾的 pack() 方法是一個簡單的擺放小工具的方式。

  2. 按鈕 (Button): 按鈕的文本為 "點擊我!"。我們還傳遞了一個 command 參數,用於指定按下按鈕時要執行的功能。在這裡,指定的命令是 lambda: print("按鈕被按下了!"),所以按下後你會在控制台看到消息。

如此一來,我們不僅創建了一個基本的窗口,還使它變得互動!可以說,我們從單一窗口邁向了一個小型 "應用程式"。這只是個開始——前面還有很多精彩等著我們!

希望你喜歡這次關於 Tkinter 的初步旅程。記住,GUI 是向世界展示你程式設計才能的視覺方式。在下一堂課中,我們將學習如何添加按鈕和輸入框,準備迎接更加互動的界面吧!

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION