zoukankan      html  css  js  c++  java
  • Qt输入框添加搜索按钮,以及自动补全内容

    //输入框添加自动搜索按钮和自动补全控件
    void addSerachIconAndCompleterToLineEdit(QLineEdit* lineEdit)
    {
        QCompleter* completer = new QCompleter(lineEdit);
        QStringListModel* stringListModel = new QStringListModel(lineEdit);
        completer->setMode(stringListModel);
        //显示全部搜索结果
        completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion); 
         lineEdit->setCompleter(completer);
         auto searchAction = new QAction(lineEdit);
         searchAction->setIcon(QApplication::style()->standardIcon(QStyle::SP_FileDialogContentsView));
         //searchAction->setIcon(":/resource.query.png");
         lineEdit->addAction(searchAction, QlineEdit::TrailingPosition);
         connect(searchAction, SIGNAL(triggered()), this, SLOT(onSearchAction()));
    }
    
    void onSearchAction()
    {
         QObject* sender = sender();
         QAction* action = dynamic_cast<QAction*>(sender);
         auto parent = action->parentWidget();
         auto lineEdit = dynamic_cast<QLineEdit*>(parent);
         auto text = lineEdit->text();
         auto completer = lineEdit->completer();
         auto model = dynamic_cast<QStringListModel*>(completer->model());
         QStingList queryResults;
         queryResults<<"AAA"<<"1234";
         model->setStringList(queryResults);
         completer->complete();
    }
  • 相关阅读:
    Java——数组
    Java——控制循环结构
    脏检查
    Session跟SessionFactory的线程安全与非安全
    脏检查and刷新机构
    oracle函数
    多线程下单列模式
    多线程
    线程同步
    文件上传功能的实现
  • 原文地址:https://www.cnblogs.com/coolbear/p/12966143.html
Copyright © 2011-2022 走看看