QCompleter不支持up和down键

时间:2018-05-31 00:45:00

标签: c++ qt qcompleter

我使用setEditable(true)使QComboBox可编辑,当我输入cy时,将会显示完成者的弹出视图,并列出所有可能的结果,如:{{1 }},cyancyana ...但是当我在键盘(liecyan)中按向下键时,将选择第一个Qt::Key_Down并选择QComboBox&#39} s lineedit& #39;文本将设置为cyan,同时,完成弹出式视图更新,仅显示cyan。如何对其进行自定义以使其行为类似于网络cyan组件。

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。

1。class MyListView : public QListView

2. MyListView's bool event(...)需要实施以关注类型为QEvent::ShortcutOverride

3.基于QEvent::ShortcutOverride,当用户按Qt:Key_UpQt::Key_Down时,设置falg false,当用户释放密钥时,设置flag为真

3. QCompleter使用setPopup(MyListView的实例)来覆盖默认列表视图 4.当falg为真时,设置QCompleter的正则表达式 我得到了我想要的东西