【问题标题】:How to check if [Shift + Tab] is being pressed in QT如何检查 QT 中是否按下 [Shift + Tab]
【发布时间】:2018-02-12 01:09:39
【问题描述】:

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

我尝试过使用:

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

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

【问题讨论】:

    标签: c++ qt qkeyevent


    【解决方案1】:

    如果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)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 2022-01-03
      • 2015-04-19
      • 2015-12-12
      • 2012-06-24
      • 1970-01-01
      相关资源
      最近更新 更多