我可以在PyQt5中禁用/删除类(即QEvent.KeyPress吗?)>

问题描述 投票:-2回答:1

我正在开发基于PyQt5的应用。我的GUI显示21个按钮:从A到Z的字母,我将它们用作

的输入

主要算法。我也希望能够从键盘输入字母。

到目前为止,在Get printable name of any QKeyEvent key value 之后,我已经能够实现这一目标。

唯一的问题是如何禁用keyPressevent,并在我的应用简介屏幕之后重新启用它,

就像我用字母按钮那样做:

self.groupBox.hide()并在按下开始新游戏后重新启用它们

按钮。与self.groupBox.show()

我在答案中写下了musicamante提供的解决方案。我仍然想现在是否有一种方法可以禁用PyQt5键盘事件处理,即我的:

def keyPressEvent(self, event):
         print(keyevent_to_string(self, event))
         print('self.letters : ',self.letters)
         print('self.letters_guessed : ',self.letters_guessed )
         if keyevent_to_string(self, event) in self.letters:
                    print('inininininini'*5)
                    self.printo(keyevent_to_string(self, event))

代码片段坐在那里,但是当我按下键盘键时不会产生任何结果?

我知道KeyPressEvent是QEvent.KeyPress的处理程序,因此有没有一种方法可以在Pyqt5中禁用/删除/删除QEvent.KeyPress类?

我正在开发基于PyQt5的应用。我的GUI显示21个按钮:从A到Z的字母,我将它们用作主要算法的输入。我也希望能够从键盘输入字母。所以...

python-3.x pyqt5 built-in
1个回答
0
投票

遵循我的musicamante建议,通过以下方式修改了代码:

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