gpt4 book ai didi

python - pyHook + pyGTK - 按键时关闭应用程序 (Windows)

转载 作者:可可西里 更新时间:2023-11-01 10:44:14 25 4
gpt4 key购买 nike

我希望我的 (Python/Windows) GUI GTK 窗口在按键时关闭。然而,没有任何反应。我是初学者,我在谷歌中寻找答案。我的英语也不是很专业。请耐心等待我。

import pygtk
import gtk
import pyHook

class Program:
def QuitOnKeyPress(self):
if pyHook.GetKeyState(81) == '1':
gtk.main_quit()

def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_position(gtk.WIN_POS_CENTER)
self.window.set_size_request(300, 300)
self.window.show()

def main(self):
gtk.main()


if __name__ == "__main__":
prog = Program()
prog.main()

while 1:
prog.QuitOnKeyPress() #Tried without () too

你能告诉我我做错了什么吗?我也尝试使用 win32api 和 pyGame。但是 win32api [from here]没有安装,只有win32com。PyGame 也有问题 - 没有安装键盘事件/模块。

最佳答案

查看 the pyHook tutorial.您的 while 循环检查是否按下某个键的方法效果不佳。相反,它应该是这样的:

def OnKeyboardEvent(event):
if event.KeyID == 81:
gtk.main_quit()

# return True to pass the event to other handlers
return True

# create a hook manager
hm = pyHook.HookManager()
# watch for all mouse events
hm.KeyDown = OnKeyboardEvent
# set the hook
hm.HookKeyboard()
# wait forever
pythoncom.PumpMessages()

关于python - pyHook + pyGTK - 按键时关闭应用程序 (Windows),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34354537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com