当前位置:网站首页>The use of QCompleter for Qt auto-completion
The use of QCompleter for Qt auto-completion
2022-08-04 17:03:00 【Autodesk_Glodon】
QCompleterAutomatic filling function can be realized,方便用户输入,提升用户的体验,一般和QLineEdit与QComboBox搭配起来使用.QCompleterThe class provides the modelitem的提示功能.
目的:The search box is often used to autocomplete searches.
效果:
代码如下:
#include "mainwindow.h"
#include "./ui_mainwindow.h"
#include<QCompleter>
#include<QFileSystemModel>
#include<QDirModel>
#pragma execution_character_set("utf-8")
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
QStringList itemList;
itemList << "北京市" << "河北省" << "河南省" << "test" << "HCTest";
// 下拉框添加数据
ui->comboBox->addItems(itemList);
// 设置可编辑
ui->comboBox->setEditable(true);
// 自动补全实例的构建
QCompleter *comp = new QCompleter(itemList,ui->comboBox->model());
// 设置匹配模式,只要包含就显示
comp->setFilterMode(Qt::MatchContains);
// 设置大小写区分,不区大小写
comp->setCaseSensitivity(Qt::CaseInsensitive);
// 设置向用户提供补全的方式
comp->setCompletionMode(QCompleter::PopupCompletion);
// 装载补全实例
ui->comboBox->setCompleter(comp);
QStringList word_list;
word_list<<"XiaoTu"<<"xiaomi"<<"Huawei"<<"huafei"<<"Shanghai"<<"shangshan"<<"abc";
QCompleter *completer = new QCompleter(word_list, this);
// 设置匹配模式,只要包含就显示
completer->setFilterMode(Qt::MatchContains);
// 设置大小写区分,不区大小写
completer->setCaseSensitivity(Qt::CaseInsensitive);
// 设置向用户提供补全的方式
completer->setCompletionMode(QCompleter::PopupCompletion);
ui->lineEdit->setCompleter(completer);
QCompleter *completer2 = new QCompleter(this);
completer2->setModel(new QDirModel(completer2));
ui->syslineEdit->setCompleter(completer2);
}
MainWindow::~MainWindow()
{
delete ui;
}
边栏推荐
- redis
- 生产环境重大bug,update加上索引字段会走索引进行更新?还是走全表扫描
- ctfshow 萌新web1-21
- Mobile zte ZXV10 B860AV2. 1 - A_S905L2_MT7668_ wire brush the firmware package
- 多线程学习笔记-3.并发容器
- Mobile magic box CM211-1_YS foundry _S905L3B_RTL8822C_wire brush firmware package
- 机器学习入门到大神专栏总览
- LeetCode 0167. 两数之和 II - 输入有序数组
- 黑龙江移动新魔百盒M411A_2+8_S905L3A_线刷固件包
- 泰坦尼克号沉船数据之美——起于悲剧,止于浪漫
猜你喜欢
随机推荐
icu是哪个国家的域名?icu是什么域名?
leetcode 48. Rotate Image 旋转图像(Medium)
谷歌开发者社区推荐:《Jetpack Compose 从入门到实战》新书上架,带你踏上 Compose 开发之旅~
ctfshow 萌新web1-21
并发编程原理学习-reentrantlock源码分析
18 Data Collection Analysis
浙江数码代工M301H 免拆通刷_卡刷固件包(语音OK)
Mobile Hisense IP102H_905L3-B_wire brush firmware package
【图像分类】2021-DeiT
数据库内核面试中我不会的问题(2)
AtCoder Beginner Contest 262 部分题解
北京海淀6家必胜客被暂停外卖订餐 存在食品安全问题
pygame的freetype模块
Minecraft 我的世界 .minecraft下的各个文件夹的用处
机器学习(十四):K均值聚类(kmeans)
Selenium Webdriver驱动自管理
乐享购(分享购)的模式:优势、亮点、收益
WEB 渗透之SSTI 模板注入
罗振宇折戟创业板/ B站回应HR称用户是Loser/ 腾讯罗技年内合推云游戏掌机...今日更多新鲜事在此...
Minecraft 服务器安装Forge 并添加Mod