У меня есть часть QML моего приложения, которая должна знать, в каком состоянии я нахожусь. Функция currentProfileChanged
имеет сигнал, дающий мне QSystemDeviceInfo::Profile
, который я хочу преобразовать в QVaraint
, чтобы QML может понимать профиль как число от 0 до 7, но эта функция:
QObject::connect(deviceInfo,
SIGNAL(currentProfileChanged(QSystemDeviceInfo::Profile)),
rootObject,
SLOT(changePower(QVariant(QSystemDeviceInfo::Profile))));
выдает эту странную ошибку:
[Qt Message] Object::connect: No such slot
QDeclarativeItem_QML_3::changePower(QVariant(QSystemDeviceInfo::Profile))
in C:/Users/Gerhard/QTProjects/Raker/main.cpp:142
Что я здесь не так делаю?
Если я попробую это:
QObject::connect(deviceInfo,
SIGNAL(currentProfileChanged(QSystemDeviceInfo::Profile)),
rootObject,
SLOT(changePower(QVariant(QSystemDeviceInfo::Profile))));
Это говорит это:
[Qt Message] Object::connect: No such slot
QDeclarativeItem_QML_3::changePower(QSystemDeviceInfo::Profile)
in C:/Users/Gerhard/QTProjects/Raker/main.cpp:142
Если я заменю любой или оба на просто QVariant, он также будет жаловаться на несовместимые аргументы.