Hi all, I'm using Tkinter for the first time in a small project where multi-language functionality is necessary. I'm using gettext for handling it together with StringVar.
Is there a mechanism that saves me from having to make a call to the set() function for each StringVart involved? Here below some code to better explain me. Thank you very much. slY def set_language(lang): current_lang = gettext.translation("translation", localedir="locale", languages=[lang]) current_lang.install() my_string_var1.set(msg1) my_string_var2.set(msg2) my_string_var3.set(msg3) ... msg1 = _("lorem") msg2 = _(".ipsum") msg3 = _("dolor") ... my_string_var1 = tk.StringVar() my_string_var2 = tk.StringVar() my_string_var3 = tk.StringVar() my_string_var1.set(msg1) my_string_var2.set(msg2) my_string_var3.set(msg3) ... Button(left, image=eng_img, borderwidth=0, command=lambda : set_language("en")).grid(row=0, column=1) Button(left, image=fra_img, borderwidth=0, command=lambda : set_language("es")).grid(row=1, column=1) Button(left, image=ita_img, borderwidth=0, command=lambda : set_language("de")).grid(row=2, column=1) msg1_label = Label(right, textvariable=my_string_var1).grid(row=0, column=1) msg2_label = Label(right, textvariable=my_string_var2).grid(row=1, column=1) msg3_label = Label(right, textvariable=my_string_var3).grid(row=2, column=1) ... _______________________________________________ Tkinter-discuss mailing list Tkinter-discuss@python.org https://mail.python.org/mailman/listinfo/tkinter-discuss