Qt QCompleter自动补全怎么实现
更新:HHH   时间:2023-1-7


这篇“Qt QCompleter自动补全怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Qt QCompleter自动补全怎么实现”文章吧。

1.QCompleter类可以在输入框输入字符时,进行提示可以匹配上的字符

例:为QLineEdit设置自动补全

    QStringList country;
    country<<"China"<<"Japan"<<"English"<<"Endian"<<"American"<<"Australia";
    QCompleter *completer = new QCompleter(country, this);
    completer->setCaseSensitivity(Qt::CaseInsensitive);
    ui->lineEdit->setCompleter(completer);

2.设置model,自动补全

例:补全文件路径

    QDirModel *model = new QDirModel(this);
    QCompleter *completer = new QCompleter(this);
    completer->setModel(model);
    ui->lineEdit->setCompleter(completer);

3.一些常用设置

设置匹配规则

completer->setFilterMode(Qt::MatchStartsWith);
//Qt::MatchStartsWith //default 开头匹配
//Qt::MatchContains // 内容匹配
//Qt::MatchEndsWith //结尾匹配

设置补全方式

completer->setCompletionMode(QCompleter::PopupCompletion);
//QCompleter::InlineCompletion
//QCompleter::UnfilteredPopupCompletion

设置显示的最大数目

completer->setMaxVisibleItems(5);

以上就是关于“Qt QCompleter自动补全怎么实现”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注天达云行业资讯频道。

返回开发技术教程...