<i id='zm1kO'><tr id='zm1kO'><dt id='zm1kO'><q id='zm1kO'><span id='zm1kO'><b id='zm1kO'><form id='zm1kO'><ins id='zm1kO'></ins><ul id='zm1kO'></ul><sub id='zm1kO'></sub></form><legend id='zm1kO'></legend><bdo id='zm1kO'><pre id='zm1kO'><center id='zm1kO'></center></pre></bdo></b><th id='zm1kO'></th></span></q></dt></tr></i><div id='zm1kO'><tfoot id='zm1kO'></tfoot><dl id='zm1kO'><fieldset id='zm1kO'></fieldset></dl></div>
    <legend id='zm1kO'><style id='zm1kO'><dir id='zm1kO'><q id='zm1kO'></q></dir></style></legend>

      • <bdo id='zm1kO'></bdo><ul id='zm1kO'></ul>

      1. <small id='zm1kO'></small><noframes id='zm1kO'>

      2. <tfoot id='zm1kO'></tfoot>

        Tkinter 应用程序 - 允许多种语言

        时间:2023-07-23
        <tfoot id='2S0QZ'></tfoot>
            <tbody id='2S0QZ'></tbody>

            1. <legend id='2S0QZ'><style id='2S0QZ'><dir id='2S0QZ'><q id='2S0QZ'></q></dir></style></legend>
                <bdo id='2S0QZ'></bdo><ul id='2S0QZ'></ul>
              • <small id='2S0QZ'></small><noframes id='2S0QZ'>

                <i id='2S0QZ'><tr id='2S0QZ'><dt id='2S0QZ'><q id='2S0QZ'><span id='2S0QZ'><b id='2S0QZ'><form id='2S0QZ'><ins id='2S0QZ'></ins><ul id='2S0QZ'></ul><sub id='2S0QZ'></sub></form><legend id='2S0QZ'></legend><bdo id='2S0QZ'><pre id='2S0QZ'><center id='2S0QZ'></center></pre></bdo></b><th id='2S0QZ'></th></span></q></dt></tr></i><div id='2S0QZ'><tfoot id='2S0QZ'></tfoot><dl id='2S0QZ'><fieldset id='2S0QZ'></fieldset></dl></div>

                  本文介绍了Tkinter 应用程序 - 允许多种语言的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在用 Python 编写我的第一个 Tk 应用程序.我找不到如何为屏幕文本/对话框创建支持多种语言的 UI 的示例.最初我会支持英语,但希望能够添加其他语言(从文件,可能是 XML)并让用户从应用程序首选项菜单中选择他们想要的语言.

                  I'm writing my first Tk app with Python. I can't find an example of how to create a UI which supports multiple languages for the on screen text/dialogs. Initially I'd support English, but would like the ability to add others (from a file, perhaps XML) and have users select which language they want from an applications preferences menu.

                  有人对最佳方法有建议吗?

                  Does anyone have advice towards the best approach?

                  推荐答案

                  GUI 应使用默认语言的字符串构造其文本.因此,例如,您的代码将如下所示:

                  The GUI should construct its text with strings from a default language. So, for example, your code would look something like this:

                  import Tkinter as Tk
                  root = Tk.Tk()
                  root.title('Program')
                  menuButton = Tk.Button(root, text='Menu')
                  menuButton.grid(row=0, column=0)
                  root.mainloop()
                  

                  更改语言就像根据所选语言修改每个 Tk 小部件一样简单.例如,

                  Changing the language is as simple as modifying each Tk widget depending on the selected language. For example,

                  def change_language(lang):
                      if lang == 'English':
                          root.title('Program')
                          menuButton.config(text='Menu')
                      elif lang == 'Spanish':
                          root.title('Programa')
                          menuButton.config(text='Menú')
                  

                  为了更容易编写代码,您可以将语言数据存储在一个文件(例如 csv)中,将其解析为列表或字典,并具有以下内容:

                  To make it easier to write the code, you could store your language data in a file (e.g. csv), parse it into lists or dictionaries, and have something like this:

                  english = ['Program', 'Menu']
                  spanish = ['Programa', 'Menú']
                  
                  def change_language_2(lang):
                      root.title(lang[0])
                      menuButton.config(text=lang[1])
                  

                  这篇关于Tkinter 应用程序 - 允许多种语言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:Python:在单词边界上拆分 unicode 字符串 下一篇:Django 1.9 到 1.10 引发 NoReverseMatch:u'en-gb' 不是已注册的命

                  相关文章

                  1. <tfoot id='UTLWC'></tfoot>
                  2. <small id='UTLWC'></small><noframes id='UTLWC'>

                    <i id='UTLWC'><tr id='UTLWC'><dt id='UTLWC'><q id='UTLWC'><span id='UTLWC'><b id='UTLWC'><form id='UTLWC'><ins id='UTLWC'></ins><ul id='UTLWC'></ul><sub id='UTLWC'></sub></form><legend id='UTLWC'></legend><bdo id='UTLWC'><pre id='UTLWC'><center id='UTLWC'></center></pre></bdo></b><th id='UTLWC'></th></span></q></dt></tr></i><div id='UTLWC'><tfoot id='UTLWC'></tfoot><dl id='UTLWC'><fieldset id='UTLWC'></fieldset></dl></div>
                        <bdo id='UTLWC'></bdo><ul id='UTLWC'></ul>
                      <legend id='UTLWC'><style id='UTLWC'><dir id='UTLWC'><q id='UTLWC'></q></dir></style></legend>