• 7199阅读
  • 5回复

请问,qcombobox的按键响应,怎么修改? [复制链接]

上一主题 下一主题
离线jn200002
 

只看楼主 倒序阅读 楼主  发表于: 2010-07-15
qcombobox  :  focusin  -> 点KEY space 打开listitem -> 移动到item 高亮-> 再点击 KEY space 选中时,无反映了,这时只能点KEY enter才能选中,但是如何把这个能被响应的KEY enter修改成BEY space呢?
离线xtfllbl

只看该作者 1楼 发表于: 2010-07-15
不好意思,没看懂,能否描述的再清晰一点。
上海欢迎您
离线jn200002

只看该作者 2楼 发表于: 2010-07-15
    if (event->type() == QEvent::KeyPress) {
         QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
         switch (keyEvent->key())
         {
         case Qt::Key_Up:
         case Qt::Key_Down:
         case Qt::Key_Left:
         case Qt::Key_Right:
         case Qt::Key_Enter:
         case Qt::Key_Return:
         case Qt::Key_Escape:
         case Qt::Key_Space:
         default:
             return QObject::eventFilter(object,event);
         }
    }
    else
        return QObject::eventFilter(object, event);
Key_Space 默认可以打开combobox的 listItem,Key_Down移动到某一个item A,然后想选定这个item A 这时 Key_Space 不起作用了,只能点击 Key_Enter来选定这个Item A 。 而我想把 选择时使用 Key_Enter改为Key_Space.
这里的Key_Space 和 Key_Enter都没重新实现
离线xtfllbl

只看该作者 3楼 发表于: 2010-07-15
什么叫不起作用了,选定item a的时候按下空格有输出么,有输出的话那就记录当前index或者text,然后自己想怎么处理怎么处理。
上海欢迎您
离线jn200002

只看该作者 4楼 发表于: 2010-07-15
呵呵,在准备打开combobox的Listitem之前,可以接受Key_Space,但是进入combobox的listitem后 Key_Space就不起作用了~

Key_Space:进入listitem,有输出,选定  item a 后,按Key_Space没有输出。

离线hongqiang
只看该作者 5楼 发表于: 2011-06-17
你的问题解决了吗 ?  我也遇到同样的问题  但是不知道改怎么解决??    
快速回复
限100 字节
 
上一个 下一个