QT中如何检查是否按下了[Shift + Tab]

How to check if [Shift + Tab] is being pressed in QT

如何使用 QKeyEvent 检查是否按住 SHIFT 键并按下 TAB 键?

我试过使用:

(event->key() == Qt::Key_Tab && event->modifiers() == Qt::ShiftModifier)

但是,只要按住shift键,event->key()就不等于Qt::Key_Tab

如果event->key()以十六进制格式打印:

qDebug()<<QString("key: 0x%1").arg(event->key(), 8, 16, QChar('0'));

你得到了什么:"key: 0x01000002" 然后检查 docs 你会看到密钥是:

Qt::Key_Backtab 0x01000002

所以你必须使用那个密钥:

if(event->key() == Qt::Key_Backtab)