【发布时间】:2018-02-16 10:07:23
【问题描述】:
当条目在 Gtk Python 中获得焦点(或显示对话框)时,我想更改输入语言。在我的程序中,多次出现对话框,用户必须输入一些文本。在允许每个窗口使用不同键盘布局的系统中,用户必须在每次出现对话框时更改输入语言。我在 ubuntu 上编程...
【问题讨论】:
标签: python ubuntu gtk keyboard-layout input-language
当条目在 Gtk Python 中获得焦点(或显示对话框)时,我想更改输入语言。在我的程序中,多次出现对话框,用户必须输入一些文本。在允许每个窗口使用不同键盘布局的系统中,用户必须在每次出现对话框时更改输入语言。我在 ubuntu 上编程...
【问题讨论】:
标签: python ubuntu gtk keyboard-layout input-language
我的第一个方法是查看 Gtk+ 输入法。
Gtk.Entry 具有im_module 属性,可用于设置Gtk.IMContext。
还有两篇博文(1、2)和一篇关于 Gtk+ 输入法的广泛的 Stackoverflow Answer,可能会对您有所帮助。
我的第二种方法是使用xkb。
你可以试试
subprocess.run('sudo setxkbmap -layout ' + entry_lang_str)
然后我记得你也可以使用gsettings。
gsettings set /org/gnome/desktop/input-sources/ sources [('xkb', entr_lang_str)](也可以通过subprocess.run())
对我来说,使用 gsettings 似乎是最简单的方法。
【讨论】: