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

时间:2009-11-05 07:01:56

标签: qt

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

3 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:1)

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

LINE 1: SELECT * FROM tbl.tbl WHERE OriginalDate BETWEEN TO_DAT...
                                                      ^
HINT:  No operator matches the given name and argument type(s).
       You might need to add explicit type casts.
SQL state: 42883

答案 2 :(得分:0)

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