import Tkinter
from Tkinter import ttk
root = tk()
root.mainloop()
label = ttk.Label(root, text = "This text I want to change")
label.grid()
def select_label_text():
top = Toplevel()
top.title("Select Name")
def change_name(name):
label.cofigure(text=name)
top.destroy()
label_names = [a,b,c...] #this has undefined strings
for i in range(len(label_names)): #here I made a button for each different name
ttk.button(top, text = label_names[i], command = lambda: change_name(label_names[i])).grid()
我想在按下按鈕時將標簽文本更改為按鈕的名稱。有未定義的按鈕,所以我無法將每個按鈕保存到變數中。
ttk.Button(root, comand = select_label_text()).grid()
uj5u.com熱心網友回復:
你有很多錯誤。這是您的代碼版本,適用于 Python 3,而不是 Python 2,至少可以運行。它可能不會完全按照您的意愿去做,但它確實有效,而且它比您發布的內容更好。修改后的代碼如下:
import tkinter # Tkinter
from tkinter import ttk
def select_label_text():
top = tkinter.Toplevel()
top.title("Select Name")
def change_name(name):
label.configure(text=name)
top.destroy()
label_names = ["a", "b", "c..."] #this has undefined strings
for i in range(len(label_names)): #here I made a button for each different name
ttk.Button(top, text=label_names[i], command=lambda i=i: change_name(label_names[i])).grid()
root = tkinter.Tk()
label = ttk.Label(root, text = "This text I want to change")
label.grid()
ttk.Button(root, command=select_label_text).grid()
root.mainloop()
您應該在您的代碼和此版本之間進行差異比較以查看更改。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/352491.html
