Board logo

標題: 圖形介面 (六) - 點擊計數器 [打印本頁]

作者: tonyh    時間: 2023-7-13 17:00     標題: 圖形介面 (六) - 點擊計數器

本帖最後由 tonyh 於 2023-7-19 16:59 編輯





方法一:使用動態文字變數
  1. import tkinter as tk

  2. def count():
  3.     n=lbtext.get()
  4.     n+=1
  5.     lbtext.set(n)
  6.    
  7. def clear():
  8.     lbtext.set(0)

  9. win=tk.Tk()
  10. win.title("點擊計數器")
  11. win.resizable(0,0)

  12. lbtext=tk.IntVar()
  13. #初始化一動態文字內容,IntVar為整數(預設值0),DoubleVar為浮點數(預設值0.0),StringVar為字串(預設值"")
  14. #lbtext.set(5)   #get()取得文字內容,set()設定文字內容

  15. lb=tk.Label(win, fg="red", textvariable=lbtext, width=10, height=2, font=("微軟正黑體",16)).pack(side="left")
  16. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  17. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")

  18. win.mainloop()
複製代碼
屬性                說明
-----------------------------------------------------
textvariable    設定動態文字變數
command       設定使用者觸發事件時要執行的函式

方法二:使用 cget() 與 config()
  1. import tkinter as tk

  2. def count():
  3.     n=lb.cget("text")
  4.     n+=1
  5.     lb.config(text=n)
  6.    
  7. def clear():
  8.     lb.config(text=0)

  9. win=tk.Tk()
  10. win.title("點擊計數器")
  11. win.resizable(0,0)

  12. lb=tk.Label(win, fg="red", text=0, width=10, height=2, font=("微軟正黑體",16))
  13. lb.pack(side="left")
  14. #若後續需對元件做處理,佈局方法須分開寫。

  15. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  16. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")

  17. win.mainloop()
複製代碼
函式           說明
--------------------------
cget()       取得屬性值
config()     配置屬性值
作者: 王捷恩    時間: 2023-7-13 17:22

  1. def count():
  2.     n=lbtext.get()
  3.     n+=1
  4.     lbtext.set(n)
  5.    
  6. def clear():
  7.     lbtext.set(0)
  8.    
  9. import tkinter as tk
  10. win=tk.Tk()
  11. win.title("主視窗")
  12. win.resizable(0,0)
  13. lbtext=tk.IntVar()
  14. lb=tk.Label(win, fg="red", textvariable=lbtext, width=10, height=2, font=("微軟正黑體",16)).pack(side="left")
  15. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  16. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  17. win.mainloop()
複製代碼

作者: 李沛昂    時間: 2023-7-13 17:26

  1. import tkinter as tk
  2. def count():
  3.     n=Ibtext.get()
  4.     n+=1
  5.     Ibtext.set(n)
  6. def clear():
  7.     Ibtext.set(0)
  8. win=tk.Tk()
  9. win.title("點及技術氣")
  10. win.resizable(0,0)
  11. Ibtext=tk.IntVar()
  12. lb=tk.Label(win,fg="red",textvariable=Ibtext,width=10,height=2,font=("微軟正黑體",16)).pack(side="left")
  13. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  14. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  15. win.mainloop()
複製代碼

作者: 李沛昂    時間: 2023-7-20 16:00

  1. import tkinter as tk

  2. def count():
  3.     n=lb.cget("test")
  4.     n+=1
  5.     lb.config(text=n)
  6.    
  7. def clear():
  8.     lb.config(text=0)

  9. win=tk.Tk()
  10. win.title("點擊計數器")
  11. win.resizable(0,0)

  12. lb=tk.Label(win, fg="red", text=0, width=10, height=2, font=("微軟正黑體",16))
  13. lb.pack(side="left")
  14. #若後續需對元件做處理,佈局方法須分開寫。

  15. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  16. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")

  17. win.mainloop()
複製代碼

作者: 王捷恩    時間: 2023-7-20 16:01

  1. import tkinter as tk

  2. def count():
  3.     n=lb.cget("text")
  4.     n+=1
  5.     lb.config(text=n)
  6.    
  7. def clear():
  8.     lb.config(text=0)

  9. win=tk.Tk()
  10. win.title("點擊計數器")
  11. win.resizable(0,0)

  12. lb=tk.Label(win, fg="red", text=0, width=10, height=2, font=("微軟正黑體",16))
  13. lb.pack(side="left")


  14. btn=tk.Button(win, text="點擊", command=count, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")
  15. btn=tk.Button(win, text="歸零", command=clear, width=10, height=2, font=("微軟正黑體",12)).pack(side="left")

  16. win.mainloop()
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2