首页 > 解决方案 > QCompleter 不支持上下键

问题描述

setEditable(true)用来QComboBox编辑,当我输入时,完成者的cy弹出视图将可见并列出所有可能的结果,如:将设置,同时完成者的弹出视图更新,仅显示。如何自定义它以使其表现得像 web 的组件。cyancyanaliecyanQt::Key_Downcyancyancyanselect

标签: c++qtqcompleter

解决方案


我已经解决了这个问题。

1.class MyListView : public QListView

2.MyListView's bool event(...)需要实现的关注类型是QEvent::ShortcutOverride

3.基于QEvent::ShortcutOverride,当用户按下Qt:Key_UpQt::Key_Down,设置为falg假,当用户释放键,设置为flag

3.QCompleter使用 setPopup( MyListView's instance) 覆盖默认列表视图 4. 设置 QCompleter 的正则表达式在falg为真时工作 5. 我得到了我想要的


推荐阅读