首页 > 解决方案 > 即使我按下 Key_F10 或 Key_F11 也会实现 Qt::Key_F9 案例

问题描述

我遇到了一个相当奇怪的场景,我使用 QT 键来实现一些功能,但即使将它们分成不同的情况(对于 F9、F10 和 F11),每当我按 F10 或 F11 时,它都会转到 F9 情况首先(实现 KeyF9())然后实现自己的透视函数(KeyF10()/KeyF11())。

if ((e->key() & Qt::Key_F9) == Qt::Key_F9)
    KeyF9();
if ((e->key() & Qt::Key_F10) == Qt::Key_F10)
    KeyF10();
if ((e->key() & Qt::Key_F11) == Qt::Key_F11)
    KeyF11();

有没有其他人遇到过类似的情况,请帮助我。提前致谢。

标签: qtvisual-c++

解决方案


你不应该像面具一样使用 Qt::key 的枚举,因为它不是。

if(e->key()  == Qt::Key_F9)
    KeyF9();

会好的。


推荐阅读