藏猊 2022-03-17 11:54 采纳率: 57.1%
浏览 133
已结题

qt 键盘信号接收的问题

一个奇怪的问题。
我设置接收

void keyPressEvent(QKeyEvent* event){
   switch (event->key()) {
     case Qt::Key_Plus: {}
     case Qt::Key_Minus: {}
  }
}

接收一个+号,但是主键盘上面的那个按钮,+和=那个按钮就没反应。小键盘上的+号就有反应。
换成接收-号,主键盘和小键盘上面的-号就都有反应,为什么?

  • 写回答

1条回答 默认 最新

  • _GX_ 2022-03-17 14:35
    关注

    怎么没反应呢,你的键盘坏了吧。加上这句qDebug() << event;看看输出
    主键盘上的+是先有Key_Shift,然后才是Key_Plus

    QKeyEvent(KeyPress, Key_Shift, ShiftModifier)
    QKeyEvent(KeyPress, Key_Plus, ShiftModifier, text="+")
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 3月25日
  • 已采纳回答 3月17日
  • 修改了问题 3月17日
  • 创建了问题 3月17日