用Python的Tkinter套件製作簡單易用的計數器應用程式

文、意如老師
看完這篇文章你可以學到:
1. 設定動態文字
2. 製作計數器
📖 延伸閱讀:【Python GUI教學】製作標籤Label、按鈕Button、文字Text元件
設定動態文字
首先認識常用的參數:
用來設定動態按鈕文字使用:textvariable
變數是字串使用:tk.StringVar()
變數是整數使用:tk.IntVar()
變數是小數點使用:tk.Double()
抓取動態變數使用:變數.get()
設定動態變數使用:變數.set(字串)
使用者按下時可呼叫方法:command
實作範例:點按鈕以後(改變按鈕內文字)
點按鈕以後(改變按鈕內文字)
Q:什麼字全世界通用?
A:阿拉伯數字
程式碼解析:
#寫一個功能answer1用來儲存按鈕的文字,呼叫此功能時更新文字
def answer1():
yrvar.set("阿拉伯數字")
#匯入tkinter套件,取別名為tk
import tkinter as tk
#建立tk視窗
yrwin=tk.Tk()
#設定文字為動態的
yrvar= tk.StringVar()
#設定按鈕,點選按鈕時呼叫answer1 功能,改變文字
yrbtn=tk.Button(yrwin,textvariable=yrvar,command=answer1)
#設定預設按鈕文字
yrvar.set("什麼字全世界通用?")
#把設定好的Button放進視窗中
yrbtn.pack()
#當使用者操作時更新介面
yrwin.mainloop()
完整程式碼:
def answer1():
yrvar.set("阿拉伯數字")
import tkinter as tk
yrwin=tk.Tk()
yrvar= tk.StringVar()
yrbtn=tk.Button(yrwin,textvariable=yrvar,command=answer1)
yrvar.set("什麼字全世界通用?")
yrbtn.pack()
yrwin.mainloop()
任務二:製作計數器
程式碼解析:
先把介面(一個lable標籤、兩個button按鈕)先建立起來、並設定動態文字
#匯入tkinter 套件取別名tk
import tkinter as tk
#建立視窗
yrwin=tk.Tk()
yrlabeltxt=tk.StringVar() #設定動態文字為字串類型
yrbtntxt=tk.StringVar() #設定動態文字為字串類型
yrbtntxt2=tk.StringVar() #設定動態文字為字串類型
num = 0 #目前預設數字為0
#建立lable標籤
mylabel= tk.Label(yrwin,textvariable=yrlabeltxt)
yrlabeltxt.set("目前計數為0")
mylabel.pack()
#建立button 加1的按鈕
mybtn=tk.Button(yrwin,textvariable=yrbtntxt)
yrbtntxt.set("+1")
mybtn.pack()
#建立button 減1的按鈕
mybtn2=tk.Button(yrwin,textvariable=yrbtntxt2)
yrbtntxt2.set("-1")
mybtn2.pack()
#當使用者操作時更新介面
yrwin.mainloop()
#建立兩個方法(+1,-1)計數
#點選按鈕時去呼叫方法,改變計數
def plus1():
global num
num+=1
yrlabeltxt.set("目前計數為"+str(num)+"了");
def m1():
global num
num-=1
yrlabeltxt.set("目前計數為"+str(num)+"了");
#按下+1按鈕時呼叫方法執行plus1
mybtn=tk.Button(yrwin,textvariable=yrbtntxt,command=plus1)
yrbtntxt.set("+1")
mybtn.pack()
#按下-1按鈕時呼叫方法執行m1
mybtn2=tk.Button(yrwin,textvariable=yrbtntxt2,command=m1)
yrbtntxt2.set("-1")
mybtn2.pack()
完整程式碼:
def plus1():
global num
num+=1
yrlabeltxt.set("目前計數為"+str(num)+"了");
def m1():
global num
num-=1
yrlabeltxt.set("目前計數為"+str(num)+"了");
import tkinter as tk
yrwin=tk.Tk()
yrlabeltxt=tk.StringVar()
yrbtntxt=tk.StringVar()
yrbtntxt2=tk.StringVar()
num = 0
mylabel= tk.Label(yrwin,textvariable=yrlabeltxt)
yrlabeltxt.set("目前計數為0")
mylabel.pack()
mybtn=tk.Button(yrwin,textvariable=yrbtntxt,command=plus1)
yrbtntxt.set("+1")
mybtn.pack()
mybtn2=tk.Button(yrwin,textvariable=yrbtntxt2,command=m1)
yrbtntxt2.set("-1")
mybtn2.pack()
yrwin.mainloop()
🤔:「聽說Python AI深度學習與強化學習實務課程很難,你覺得值得上嗎?」
🤩:「絕對值得!這門課程讓你能製作出簡單易用的計數器應用程式,同時深入了解AI的應用,挑戰自我!」
😆:「那我要趕快報名搶優惠了!一邊學習Python,一邊探索現在最流行的AI!」
👉🏻Python AI深度學習與強化學習實務
FB粉絲團:https://www.facebook.com/lccnetzone
YouTube頻道:https://www.youtube.com/user/LccnetTaiwan
痞客邦Blog:http://lccnetvip.pixnet.net/blog