2017-04-17 57 views
0

我想让用户有机会在程序运行时将德语改为日语! (多国语言程序) 我尽了我最大的努力并检出了很多东西,但我找不到方法!程序运行期间,如何更改菜单中的文本?

下面是代码:

# -*- coding: utf-8 -*- 

from tkinter import * 

lang_datei = ("Datei", "Neu", "Beenden") 
lang_sprache = ("Language", "Deutsch", "日本語") 

fenster = Tk() 
fenster.geometry("500x400") 

# Definition Text widget 
def buildnew_textwidget(): 
    T.insert(END, "") 
T = Text(fenster, height=500, width=400) 
T.pack() 

### Definitionen filemenu ### 
def NewFile(): 
    pass 

### Definition String Language DE/JP 
def Sprache_de(): 
    lang_datei = ("Datei", "Neu", "Beenden") 
    lang_sprache = ("Sprache", "Deutsch", "日本語") 

def Sprache_jp(): 
    lang_datei = ("ファイル", "新しい", "終了する") 
    lang_sprache = ("言語", "Deutsch", "日本語") 

menu = Menu(fenster) 

# file menu 
filemenu = Menu(menu, bd=0, tearoff=0,) 
menu.add_cascade(label=lang_datei[0], menu=filemenu) 
filemenu.add_command(label=lang_datei[1], command=NewFile) 
filemenu.add_command(label=lang_datei[2], command=fenster.quit) 

# language menu 
sprachmenu = Menu(menu, tearoff=0) 
menu.add_cascade(label=lang_sprache[0], menu=sprachmenu) 
sprachmenu.add_command(label=lang_sprache[1], command=Sprache_de) 
sprachmenu.add_command(label=lang_sprache[2], command=Sprache_jp) 


fenster.config(menu=menu) 
fenster.mainloop() 

回答

1

要改变现有的菜单项的文本,你必须使用entryconfigure方法。它将索引(数字索引或现有项目的文本)作为参数,然后选择一个或多个选项及其新值。

例如,改变第一项的标签在菜单中“你好”,你会做这样的事情:

the_menu.entryconfigure(0, label="Hello") 
+0

好的,谢谢。我会尝试吧! :-) – Oliver

相关问题