Илюха Вебер
11 мая 2019 г. 4:07

Как сделать поиск слов по буквам в lineEdit + textBrowser QT

текст, Поиск, фильтр, слов, qt, Qt, QT, c++, C++, Qt Creator

Здравствуйте
Я новичок в программировании и решил написать программку под экономку с выводами цены и названия товаров но столкнулся с такой проблемой у меня есть два объекта
Объект № (1) textBrowser в нем выводится ряд слов и цифр из БД sqlite
Объект № (2) lineEdit в этом объекте я хочу сделать поиск этих цифр и букв
Тоесть выводится текст из БД в textBrowser затем я ввожу в lineEdit первую букву или цифру из списка в textBrowser и менее показывает список этих слов или цифр
Пример как я хочу сделать на скриншоте

Пример как я хочу сделать

Пример как я хочу сделать

3

Вам это нравится? Поделитесь в социальных сетях!

1
Ruslan Polupan
  • 11 мая 2019 г. 14:50
  • Ответ был помечен как решение.

Я так понимаю список у вас на основании модели.
Если так то можно использовать QSortFilterProxyModel
Я фильтровал записи так

  1. QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel();
  2. proxyModel->setSourceModel(modelArticles);
  3.  
  4. void ArticlePage::on_lineEditFind_textChanged()
  5. {
  6. int columFind; //Колонка модели по которой будем искать
  7. ui->tableView->setModel(proxyModel);
  8. QRegExp::PatternSyntax syntax = QRegExp::PatternSyntax(QRegExp::FixedString);
  9. QRegExp regExp(ui->lineEditFind->text(),Qt::CaseInsensitive,syntax);
  10.  
  11. //Тут я выбираю по какому столбцу модели фильторовать
  12. if(ui->radioButtonName->isChecked()) columFind = 1;
  13. if(ui->radioButtonArticles->isChecked()) columFind =0;
  14. if(ui->radioButtonPrice->isChecked()) columFind = 3;
  15.  
  16. //Ну и сама фильтрация
  17. proxyModel->setFilterKeyColumn(columFind);
  18. proxyModel->setFilterRegExp(regExp);
  19. }

    Комментарии

    Только авторизованные пользователи могут публиковать комментарии.
    Пожалуйста, авторизуйтесь или зарегистрируйтесь
    • Последние комментарии
    • Evgenii Legotckoi
      16 апреля 2025 г. 17:08
      Благодарю за отзыв. И вам желаю всяческих успехов!
    • IscanderChe
      12 апреля 2025 г. 17:12
      Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
    • AK
      1 апреля 2025 г. 11:41
      Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
    • Evgenii Legotckoi
      9 марта 2025 г. 21:02
      К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
    • VP
      9 марта 2025 г. 16:14
      Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…