繁体   English   中英

在Tkinter中使用屏幕键盘上的文本更新条目小部件

[英]Updating entry widget using text from onscreen keyboard in tkinter

我想在连接了触摸屏的树莓派上运行我的代码。 GUI是使用Tkinter制作的,我想在焦点对准条目时弹出系统屏幕键盘。 这是我当前的代码:

要将条目窗口小部件与FocusIn事件绑定:

self.usernameEntry.bind('<FocusIn>', self.FocusLogin)

调用pi中安装的屏幕键盘:

    def FocusLogin(self,event):
       os.system('florence')

我的问题是,无论我通过佛罗伦萨键盘输入什么,它都不会自动填充输入小部件。 只有在关闭键盘后,我才能真正看到键入的内容。我尝试过使用matchbox-keyboard,但它只会冻结整个UI。 佛罗伦萨似乎更好,但它并没有像我提到的那样更新输入字段。 我希望UI在输入字段中自动显示我按的键。

对于寻找答案的人,我发现了两种解决方法:

首先,使用subprocess.popen创建UI和Keyboard的单独线程。 这在板载键盘上工作正常,但佛罗伦萨落后

第二种方法是在打开应用程序之前在后台运行佛罗伦萨。 然后使用

florence hide
florence show

隐藏或显示要绑定的事件的佛罗伦萨。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM