理解QMetaObject::invokeMethod-QtQuick的参数
发件人:理解QMetaObject::invokeMethod-QtQuick的参数,qt,qt-quick,Qt,Qt Quick,发件人: QMetaObject::invokeMethod(对象,“myQmlFunction”、Q_RETURN_ARG(QVariant,returnedValue)、Q_ARG(QVariant,msg)) 但是,函数参数说: 发件人: boolqmetaobject::invokeMethod(QObject*obj,const char*member,Qt::ConnectionTypetype,QGenericReturnArgument-ret,QGenericArgument-
QMetaObject::invokeMethod(对象,“myQmlFunction”、Q_RETURN_ARG(QVariant,returnedValue)、Q_ARG(QVariant,msg))代码>
但是,函数参数说:
发件人:
boolqmetaobject::invokeMethod(QObject*obj,const char*member,Qt::ConnectionType
type,QGenericReturnArgument-ret,QGenericArgument-val0=QGenericArgument(0),
QGenericArgument-val1=QGenericArgument(),QGenericArgument-val2=QGenericArgument(),
QGenericArgument val3=QGenericArgument(),QGenericArgument val4=QGenericArgument(),
QGenericArgument val5=QGenericArgument(),QGenericArgument val6=QGenericArgument(),
QGenericArgument val7=QGenericArgument(),QGenericArgument val8=QGenericArgument(),
qgenericalargument val9=qgenericalargument())[静态]
因此,该函数的第三个参数是:Qt::ConnectionType
Q\u RETURN\u ARG(QVariant,returnedValue)如何对应于Qt::ConnectionType
?调用方法有多个重载,其中一个重载用于:
bool QMetaObject::invokeMethod ( QObject * obj, const char * member,
QGenericReturnArgument ret,
QGenericArgument val0 = QGenericArgument( 0 ),
QGenericArgument val1 = QGenericArgument(),
QGenericArgument val2 = QGenericArgument(),
QGenericArgument val3 = QGenericArgument(),
QGenericArgument val4 = QGenericArgument(),
QGenericArgument val5 = QGenericArgument(),
QGenericArgument val6 = QGenericArgument(),
QGenericArgument val7 = QGenericArgument(),
QGenericArgument val8 = QGenericArgument(),
QGenericArgument val9 = QGenericArgument() ) [static]
因此,调用方不需要指定连接类型和/或关心返回参数AH!他们使用了不同的重载函数。谢谢