如何更改菜单级联中的文本

2024-04-16 04:09:13 发布

您现在位置:Python中文网/ 问答频道 /正文

self.root = root
self.root.resizable(width=FALSE, height=FALSE)
self.root.title("Client")
self.menu_bar = Menu(self.root)
self.file_menu = Menu(self.menu_bar, tearoff=0)
self.file_menu.add_command(label="Log in", command=self.show_log_in)
self.file_menu.add_command(label="Reconnect", command=self.reconnect)
self.file_menu.entryconfig(1, state=DISABLED)
self.file_menu.add_command(label="Exit", command=self.root.destroy)
self.menu_bar.add_cascade(label="File", menu=self.file_menu)

我正在尝试将“文件”级联中的文本更改为不同的单词。命令是什么? 我试过了:

^{pr2}$

但它不起作用。(引发错误)。在


Tags: inselfaddfalsetitlebarrootwidth
3条回答

你可以试试这样的方法:

label_text = StringVar()
self.menu_bar.add_cascade(label=label_text, menu=self.file_menu)
self.label_text.set("File")

def change_label(self,text):
    self.label_text.set(text)

免责声明:我没有测试此代码。在

Filecascade是1索引项。这对我有用:

self.menu_bar.entryconfig(1, label="Different word")

当你实例化按钮时,你需要一个命令来调用一个改变文本的函数。例如:

btn3 = Tkinter.Button(root, text="Create Shortcut", bg=gridcolor7, state="normal",  
    width=btnw, height=btnh, command=lambda k='new text': arm_shortcut_command(k))  
btn3.grid(row=r,column=c)

def arm_shortcut_command(k):
    <code to change menu text>
    return

相关问题 更多 >