qt - 同时推送多个QPushButtons

时间:2018-03-15 10:34:51

标签: c++ qt

我找不到答案,所以这里什么都没有: 我正在为嵌入式Linux开发一个GUI,它需要能够按下2个按钮并在其中一个已按下时执行不同的功能(如键盘上的移位按钮)。我尝试使用button->setAutoRepeat(true); 它按照它说的做,但它不允许同时按下其他按钮。嵌入式Linux系统有一个10指触摸屏,因此它应该同时允许多个按钮。

TL; DR:当按下按钮时,我找不到按另一个按钮的方法。

1 个答案:

答案 0 :(得分:0)

解决方案1: 在操作按钮中处理事件时,使用QAbstractButton :: isDown()检查shift之类的按钮是否已关闭。

解决方案2: QAbstractButton hsd setChecked / isChecked函数可能很有用。

解决方案3: 对QPushButton进行子类化并重新实现keyPressEvent,或者您可以为按钮安装事件过滤器并处理QMouseEvent。此解决方案将为您的代码提供更大的灵活性。

根据使用情况和要求选择其中一种。