Реклама

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

QML, Qt

@vitaliy_antipov26 ноября 2016 г. 14:28#

Добрый день. Я только начинаю изучать программирование и прошу помощи. На основе урока “База данных 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 для свободного использования в С++.

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

Ответы

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

Реклама