У меня есть настройки базового класса Binded для привязки свойства в нем с заданными виджетами, как, например, LineEdit.Я застрял с подключением сигналов и слот.Как я вижу, это тот же код, что и в ответе на Как использовать QMetaMethod с QObject :: connect ^
class BindedSettings: public QObject
{
Q_OBJECT
public:
bool bindWtToProp(QLineEdit* targetWt, const char* propertyName);
bool stringFromVariant(const QVariant& val, QString& result){...}
}
в cpp:
bool BindedSettings::bindWtToProp(QLineEdit *targetWt, const char *propertyName)
{
QLineEdit* le = targetWt;
QMetaProperty mp = metaObject()->property(metaObject()->indexOfProperty(propertyName));
//connecting property notifiedSignal with reader lambda
QMetaMethod signal = mp.notifySignal();
connect(this, signal, this, [=](){
}); //reader
return true;
}
Iу меня есть некоторые классические соединения (без qmetamethod) в той же функции, но вот что я получаю:
C: \ Projects \ some \ settings.cpp: 279: ошибка: нет подходящей функции для вызова 'BindedSettings :: connect (BindedSettings *, QMetaMethod &, BindedSettings *, BindedSettings :: bindWtToProp (QLineEdit *, const char *): :) 'connect (this, сигнал, this, = {});