[問題] 透過點擊讓數字往上加(gui)

看板Python作者 (渡)時間6年前 (2018/12/21 23:41), 6年前編輯推噓2(205)
留言7則, 3人參與, 6年前最新討論串1/1
大家好,目前我是 python3 新手 想知道透過tkinter能不能寫出計算點擊次數的GUI程式 (也希望那個數字可以被加減乘除、比較大小) 目前自己只能寫點一次的,想不到該如何往上加上去 所以來板上請教各位,謝謝 from tkinter import* def click(): label1["text"] = "您現在點 %s 次了。"%(times) window = Tk() window.title("點擊次數") window.geometry("150x50") btn1 = Button(window,text = "確認",command=click).pack() times = 1 label1 = Label(window) label1.pack() window.mainloop() -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.152.4 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1545406906.A.048.html

12/22 04:24, 6年前 , 1F
times = 1 這邊叫做賦值,也就是把數字存到變數
12/22 04:24, 1F

12/22 04:25, 6年前 , 2F
你要學的是怎麼把 times 存的數字加上去
12/22 04:25, 2F

12/22 04:26, 6年前 , 3F
點擊 -> 呼叫 click -> 存的數字加一 不就得了
12/22 04:26, 3F
謝謝指點,但我怎麼試都沒試出來orz from tkinter import* def click(): times = 1 label1["text"] = "您現在點 %s 次了。"%(times) times += 1 #這時候times是2了,但我不知道怎麼存它,才能讓它在下一次出現 window = Tk() window.title("點擊次數") window.geometry("150x50") btn1 = Button(window,text = "確認",command=click).pack() label1 = Label(window) label1.pack() window.mainloop()

12/22 04:26, 6年前 , 4F
你現在 click 只會把 times 秀到 label 上面而已
12/22 04:26, 4F
因為不知道怎麼存,所以暫時先這樣打 XD ※ 編輯: partDu (118.171.156.91), 12/22/2018 09:06:57 最後參考其他人的做法,有做出類似的東西了 import tkinter as tk window=tk.Tk() window.title("點擊次數") window.geometry("150x50") count=0 def click(): global count count+=1 label1["text"] = "您現在點 %s 次了。"%(str(count)) button=tk.Button(window,text="請點擊",command=click) button.pack() label1 = Label(window) label1.pack() window.mainloop() ※ 編輯: partDu (118.171.156.91), 12/22/2018 09:32:39

12/22 19:11, 6年前 , 5F
因為你def最前面給他值了他每次都會變1
12/22 19:11, 5F

12/23 07:24, 6年前 , 6F
但加在外面會語法錯誤,後來知道global 就解決了
12/23 07:24, 6F

12/24 09:57, 6年前 , 7F
但是記得global不要太常用
12/24 09:57, 7F
文章代碼(AID): #1S7Gcw18 (Python)
文章代碼(AID): #1S7Gcw18 (Python)