亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

python 另一個標簽和條目小部件通過計算創建

python 另一個標簽和條目小部件通過計算創建

幕布斯6054654 2023-07-18 15:30:04
代碼如下所示創建一個標簽和三個條目小部件,我想使用相同的計算創建另一個標簽和三個條目小部件。我正在嘗試添加標簽和條目小部件,但不起作用并出現語法錯誤。try :    import tkinter as tk # Python 3except :    import Tkinter as tk # Python 2def update_sum() :# Sets the sum of values of e1 and e2 as val of e3    try :        sum_tk.set((float(e1_tk.get().replace(' ', '')) + float(e2_tk.get().replace(' ', ''))))    except :        passroot.after(10, update_sum) # reschedule the eventreturnroot = tk.Tk()root.geometry('850x450')e1_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e1's val.e2_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e2's val.sum_tk = tk.StringVar(root) # Initializes a text variable of tk to use to set e3's val.# Entriese1 = tk.Entry(root, textvariable = e1_tk)e1.grid(row=1,column=1)e2 = tk.Entry(root, textvariable = e2_tk)e2.grid(row=1,column=2)e3 = tk.Entry(root, textvariable = sum_tk)e3.grid(row=1,column=3)e4=tk.Label(root,text="SL")e4.grid(row=1,column=0)# Will update the sum every second 10 ms = 0.01 second it takes ms as arg.root.after(10, update_sum)root.mainloop()我想創建另一個標簽,如“SL”和帶有計算事件的條目小部件
查看完整描述

1 回答

?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

您可以將參數傳遞給函數并使用不同的變量調用它:


import tkinter as tk



def update_sum(first_number_tk, second_number_tk, sum_tk) :

# Sets the sum of values of e1 and e2 as val of e3

    try:

        sum_tk.set((float(first_number_tk.get().replace(' ', '')) + float(second_number_tk.get().replace(' ', ''))))

    except :

        pass


    root.after(10, update_sum, first_number_tk, second_number_tk, sum_tk) # reschedule the event

    return


root = tk.Tk()

root.geometry('850x450')


e1_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e1's val.

e2_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e2's val.

sum_tk = tk.StringVar(root) # Initializes a text variable of tk to use to set e3's val.


# Entries

e1 = tk.Entry(root, textvariable = e1_tk)

e1.grid(row=1,column=1)

e2 = tk.Entry(root, textvariable = e2_tk)

e2.grid(row=1,column=2)

e3 = tk.Entry(root, textvariable = sum_tk)

e3.grid(row=1,column=3)


e4=tk.Label(root,text="SL")

e4.grid(row=1,column=0)


e3_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e1's val.

e4_tk = tk.StringVar(root) # Initializes a text variable of tk to use to get e2's val.

sum2_tk = tk.StringVar(root) # Initializes a text variable of tk to use to set e3's val.



# Entries

e5 = tk.Entry(root, textvariable = e3_tk)

e5.grid(row=2,column=1)

e6 = tk.Entry(root, textvariable = e4_tk)

e6.grid(row=2,column=2)

e7 = tk.Entry(root, textvariable = sum2_tk)

e7.grid(row=2,column=3)


e8=tk.Label(root,text="ML")

e8.grid(row=2,column=0)



# Will update the sum every second 10 ms = 0.01 second it takes ms as arg.

root.after(10, update_sum, e1_tk, e2_tk, sum_tk)

root.after(10, update_sum, e3_tk, e4_tk, sum2_tk)


root.mainloop()


查看完整回答
反對 回復 2023-07-18
  • 1 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號