python - PySimpleGUIQt - 按下键或按钮作为动作
问题描述
import PySimpleGUIQt as sg
layout = [
[sg.Button('Button1')],
[sg.Button('Exit')],
]
window = sg.Window('Mechanical Turk tool', self._layout)
while True:
event, values = window.read()
if event == sg.WIN_CLOSED or event == 'Exit':
break
elif event == 'Button1': # how to make it possible to also press "a" on your keyboard to run that event?
print("You pressed button 1")
如何修改上面的代码,以便我可以在 GUI 上按“button1”,也可以在键盘上按“a”来启动指定事件?
解决方案
return_keyboard_events=True
在 中设置选项,然后在事件循环中sg.Window
模拟单击。button1
import PySimpleGUIQt as sg
layout = [
[sg.Button('Button1')],
[sg.Button('Exit')],
]
window = sg.Window('Mechanical Turk tool', layout, finalize=True, return_keyboard_events=True)
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, 'Exit'):
break
elif event == 'Button1':
print("You pressed button 1")
elif event == 'a':
window['Button1'].click()
window.close()
推荐阅读
- mule - 如何在 Mule 中运行 MongoDB“adminCommand”
- python-3.x - 除了 Gogle Cloud Functions 中的标准实现之外,是否可以使用不同的 Python 实现?
- python-3.x - 合并熊猫中多行的文本
- android - 模拟器:无法在 macbook 上启动
- python - 从 AWS 机密管理器中提取数据库详细信息会引发错误 - Python
- visual-studio-2017 - NuGet 包源可以作为设置从 Visual Studio 2017 导出吗?
- javascript - 将 laravel 变量传递给 Vue 前端
- javascript - 使用 babel 在构建过程中运行自定义函数
- asp.net-core - 访问通用的集线器集合
- json - 如何使用 Python 请求从 REST API 查询 JSON 格式的数据?