QT QCompleter的简单使用
2016-05-17 10:24
639 查看
需要四个类:
QCompleter
QLineEdit
QStringList (数据结构、可用其他数据结构)
QStringListModel (数据模型、可用其他数据模型或自定义)
做简单的搜索自动补全,使用最简单的数据结构 QStringList和最简单的数据模型QStringListModel。
使用下面代码完成自动补全功能
自动补全的补全规则和显示形式设置:
设置匹配规则
设置补全形式
设置最大显示数目
默认是7
QCompleter
QLineEdit
QStringList (数据结构、可用其他数据结构)
QStringListModel (数据模型、可用其他数据模型或自定义)
做简单的搜索自动补全,使用最简单的数据结构 QStringList和最简单的数据模型QStringListModel。
使用下面代码完成自动补全功能
QLineEdit *SearchLineEdit = new QLineEdit(this); QCompleter *completer = new QCompleter(); completer->setFilterMode(Qt::MatchStartsWith); completer->setCompletionMode(QCompleter::PopupCompletion ); QStringList valueList; valueList<<"plan 1"<<"rrm"<<"what"<<"plan 2"<<"what plan"<<"rr_MM"; QStringListModel *listModel; listModel = new QStringListModel(valueList, this); completer->setModel(listModel); SearchLineEdit->setCompleter(completer);
自动补全的补全规则和显示形式设置:
设置匹配规则
completer->setFilterMode(Qt::MatchStartsWith); //Qt::MatchStartsWith //default 开头匹配 //Qt::MatchContains // 内容匹配 //Qt::MatchEndsWith //结尾匹配
设置补全形式
completer->setCompletionMode(QCompleter::PopupCompletion ); //QCompleter::PopupCompletion //Current completions are displayed in a popup window. //default
completer->setCompletionMode(QCompleter::InlineCompletion); //QCompleter::InlineCompletion //Completions appear inline (as selected text).
completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion); //QCompleter::UnfilteredPopupCompletion //All possible completions are displayed in a popup window with the most likely suggestion indicated as current.
设置最大显示数目
默认是7
completer->setMaxVisibleItems(5);//defuat 7
相关文章推荐
- Qt之程序最小化托盘显示及操作
- 基于QT的音乐播放器
- VS2010打开QtCreator工程(.pro)问题集锦
- QSqlDatabase: QMYSQL driver not loaded problem under qt5.5 in ubuntu14
- QT信号槽多次连接引起的错误修改
- Pyqt 浏览器自动填充input框小demo
- Qt相关问题
- QSerialPort
- Qt串口
- QtSerialPort include header
- jqTransform:呈现更美的表单
- Qt实现"颜色减淡"算法
- Qt加载本地html文件 并且调用JS的函数在Qt中使用
- QT下载地址记录
- Qt实现应用单实例运行(2)-使用自定义类
- qtablewidget 设置居中
- Qt实现应用单实例运行(1)-使用共享内存
- Qt学习笔记:小技巧
- Loadrunner运行QTP脚本
- Qt配置文件中文读写小例子