Реклама

Передача из QML в C++

QML, Qt

Добрый день. Я только начинаю изучать программирование и прошу помощи. На основе урока “База данных SQLite и работа с ней в QML Qt” сделал ListView из заполнил данными из sqlite.db. Возникла необходимость в фильтрации данных по вводимому значению в текстовом поле. Так как в QSortFilterProxyModel разобраться не смог, решил попробовать использовать сигналы и слоты, в функции слота присвоить переменной значение свойства text объекта, а саму переменную передать в фильтр при sql запросе LIKE.

poisk::poisk(QObject *parent) : QObject(parent)
{
 
}
 
void poisk::cppSlot()
{
    //находим строку ввода
    QObject* poiskKKS = this->parent()->findChild<QObject*>("poiskKKS");
    //считаем информацию из строки
    str=(poiskKKS->property("text")).toString();
qDebug()<<str;
return;
}

Но поскольку функция типа void не возвращает значение, я нигде не могу использовать переменную str. Прошу помочь передать текст из QML для свободного использования в С++.

  • #
  • Ответ был помечен как решение
  • 26 ноября 2016 г. 21:37
Решил проблему :) Поскольку класс ListModel тоже является QObject, то код выше переписал в его слот updateModel (см. урок “База данных SQLite и работа с ней в QML Qt”). Работает как часики)
Реклама

Ответы

Только авторизованные пользователи могут отвечать на форуме.
Пожалуйста, Авторизуйтесь или Зарегистрируйтесь

C++ - Тест 002. Константы

  • Результат - 50 баллов

C++ - Тест 005. Структуры и Классы

  • Результат - 66 баллов

C++ - Тест 001. Первая программа и типы данных

  • Результат - 53 баллов
Последние комментарии
  • EVILEG
  • 23 июля 2017 г. 16:10

Использование модуля QtTextToSpeech для синтеза речи

Лично я простого не знаю способа. В обоих случаях понадобится использовать сторонние библиотеки.В случае с pdf - это будет либа, которая работает с pdf, какой-нибудь poppler-qt.В случае же ...

  • BlinCT
  • 23 июля 2017 г. 14:41

Qt/C++ - Урок 068. Hello World с использованием системы сборки CMAKE в CLion

При том подходе в разработке что ведет JetBrains, скоро CLion обгонит QtCreator. Даже сейчас он в некоторых местах по функционалу уже обходит QtCreator(работа с VCS уже превосходит в удобстве)...

Использование модуля QtTextToSpeech для синтеза речи

Если вы знаете простой способ для извлечения текста из pdf или djv файлов напишите в ответе.

  • EVILEG
  • 13 июля 2017 г. 2:12

Qt/C++ - Урок 023. Перетаскивание QGraphicsItem на QGraphicsScene мышью

Ну например так можете сделать.void MoveItem::mousePressEvent(QGraphicsSceneMouseEvent *event){ if (QApplication::mouseButtons() == Qt::RightButton) { this->deleteLa...

  • Mark
  • 13 июля 2017 г. 1:26

Qt/C++ - Урок 023. Перетаскивание QGraphicsItem на QGraphicsScene мышью

Подскажите пожалуйста как в данном проекте по перетаскиванию организовать удаление объекта со scene методом delete item, допустим при щелчке ПКМ по объекту QGraphicsScene. Мои попытки оказалис...

Сейчас обсуждают на форуме
  • EVILEG
  • 23 июля 2017 г. 19:44

Передача данных из цикла С++ в QML

День добрый. Под QQmlContext , подразумеваете, что регистрировали dataport в контексте QML , и через Connections устанавливали обработчик для сигнала ...

  • EVILEG
  • 23 июля 2017 г. 19:32

Как правильно хранить настройки подключения к БД

Я тут накидал пример простого шифрования с использованием XOR шифрования, посмотрите. Для начала Вам это должно подойти, а потом уже можно будет искать и более сложные способы шифро...

  • crak20
  • 23 июля 2017 г. 7:20

Передача нескольких переменных по UDP

Нужен пример передачи и приема переменных (например int, double, QString) по сети UDP. Как для одной переменной так и структуры. P.S новичок

Как реализовать отправку e-mail

Подключил SMTP из-под Qt при отправке сообщения QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedStateQAbstractSocket::waitForBytesWritten() is not allowe...

  • EVILEG
  • 21 июля 2017 г. 19:48

Обрезка участка изображения с сохранением пропорций

Так, а под сохранением пропорций подразумевается сохранение пропорций самой области выделения? то есть тот квадрат выделения, который перемещаете? Если есть какой код или наброски мыслей...