如何从QToolButton中删除空格键操作

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

我有一个QToolBar,其上有一个QToolButton。当鼠标单击按下QToolButton时,它会执行一些操作。按下空格键时执行相同的操作。我不希望在空格键上按下该动作,但是我希望它在鼠标点击时。我怎么能这样做?

qt
3个回答
3
投票

使用继承和覆盖QWidget::keyPressEvent()的子类QToolButton。在那里,检查你得到的钥匙是Qt::Key_Space,如果是,返回,什么都不做。如果没有将事件传递给QToolButton。


1
投票

使用没有焦点的设置焦点策略,这可以防止键盘具有焦点但仍允许鼠标单击。

Button->setFocusPolicy(Qt::NoFocus)

0
投票

确保您没有意外地将“Space”指定为与所讨论的QToolButton相关联的操作的快捷方式(请查看Qt Creater的动作编辑器)。

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