很抱歉,是否曾经有人问过这个问题,但我找不到明确的答案。我正在编写一个GUI来从树莓派控制马达,它在触摸屏上。我编写了一些代码,当Entry小部件成为焦点时,它们会打开内置的火柴盒键盘,但这会在后台暂停我的整个tkinter窗口,这意味着用户必须先关闭才能看到输入的内容。键盘,以及挂在背景中的屏幕经常会撕裂并看起来很恐怖。无论如何,是否有运行此命令的信息:
def createNumpad(event=none):
os.system('matchbox-keyboard numpad')
以便在打开键盘时tkinter窗口不会冻结?谢谢!
答案 0 :(得分:1)
这是SO answer中的相关代码,已更改为适合Tkinter:
import subprocess
def createNumpad(event)
try:
subprocess.Popen(["matchbox-keyboard", "numpad"])
except FileNotFoundError:
pass
def deleteNumpad(event):
subprocess.Popen(["killall","matchbox-keyboard"])
#
entry.bind("<Enter>", createNumpad)
entry.bind("<Leave>", deleteNumpad)