в QML из плюсов:
Parameter "showstatus" is not declared. Injection of parameters into signal handlers is deprecated. Use JavaScript functions with formal parameters instead.
код, который работал < 6.0:
h:
signals:
void signalBusy(bool showstatus);
c++:
emit signalBusy(true);
QML:
onSignalBusy: {
console.log("QML Signal busy")
if (showstatus === true) console.log("Retrived busy")
}
попытался вынести работу в функцию js с данной переменной, но все равно тогда получаю эту же самую ошибку.
Как быть?😊
showstatus это проперти? Пересобирать moc файлы пробовал?
Опять не так посмотрел( вроде все правильно.
Удалил папку билда. Собрал снова. Ошибка та же в 6.1)
Проверил в 6.0 нету этой проблемы. В 6.1 сломали, а как делать не понятно
Скоро будет, я думаю через инсталлер доступна
https://codereview.qt-project.org/c/qt/qtdeclarative/+/334386
А пробовал через синтаксис конешкена, который через function?
Q_OBJECT не забыл?
в h? class : public QObject есть
в смысле? в QML как я могу принять сигнал в функцию? такого же не было
@eSKon75 @mefest код ломается на второй строке в QML, когда он пытается переменную прочесть. Т.е. сигнал доходит назад, а вот значение переменной, уже нет
Добавили, это как новый синтаксис, без него даже криейтор ругается Connections { target: myclasscpp function onDo(myparam) { } }
это для кнопок и других элементов. а не для получения значения, после вызова сигнала из плюсов в QML .я же код привел свой)
Почему не для импорта сигнала из плюсов? Я пользовался и оно работало как ожидалось
В 6.1. как мне прочитать значение переменной?
https://stackoverflow.com/questions/62297192/qml-connections-implicitly-defined-onfoo-properties-in-connections-are-deprecat
Обсуждают сегодня