【发布时间】:2013-08-12 05:30:57
【问题描述】:
一旦我使用 display.grab_keyboard,似乎没有其他窗口知道自己的焦点。
在运行keyboardgrab 的情况下,我可以选择其他窗口,甚至可以向它们发送keyevents,但如果这个窗口是文本输入,则不会有闪烁的光标。
我读过一些关于 grab_keyboard 生成焦点事件的内容,但这并不意味着它会阻止所有焦点事件,是吗?
我没有得到什么?
from Xlib import X,XK
from Xlib.display import Display
import signal,sys
root = None
display = None
def main():
# current display
global display,root
display = Display()
root = display.screen().root
root.change_attributes(event_mask = X.KeyPressMask|X.KeyReleaseMask)
root.grab_keyboard(True, X.GrabModeAsync, X.GrabModeAsync,X.CurrentTime)
signal.signal(signal.SIGALRM, lambda a,b:sys.exit(1))
signal.alarm(10)
while True:
event = display.next_event()
print event.type
main()
【问题讨论】:
标签: python keyboard keyboard-shortcuts xlib