为什么我不能在PySimpleGUI中读取按键?

问题描述 投票:0回答:1

This simple demo显示了如何在PySimpleGUI中读取击键。但是,当我尝试运行PySimpleGUI Pong demo时,我的击键没有被视为事件。有人可以解释为什么吗?谢谢。

P.S。将use_default_focus=False添加到PySimpleGUI Pong演示中无济于事。

更新:我找到了游戏的原始Tkinter版本。它包括

    self.canvas.bind_all('w', self.up)
    self.canvas.bind_all('s', self.down)

    self.canvas.bind_all('w', self.up)
    self.canvas.bind_all('s', self.down)

在两个__init__类中pongbat方法的末尾。 (此版本完全不使用PySimpleGUI。)通过此更改,PySimpleGUI版本也可以使用。 (但这不是必须的!应该有可能获得这些击键。)

python pysimplegui
1个回答
0
投票

结果证明该解决方案非常令人惊讶。原始的SimplePyGUI代码使用此行创建一个Window。

window = sg.Window('The Classic Game of Pong', 
                   return_keyboard_events=True).Layout(layout).Finalize()

删除return_keyboard_events=True使它起作用!

© www.soinside.com 2019 - 2024. All rights reserved.