Leiten eines Javascript-Rückrufs an eine in C ++ aufgerufene Methode in Qml
n C ++ habe ich eine Klasse mit einer aufrufbaren Funktion. Ich würde diese Methode gerne von QML / Javascript aus aufrufen (das muss funktionieren) und einen JavaScript-Rückruf übergeben.
m Code definiere ich meine Klasse wie folgt:
class MyObject: public QObject
{
Q_OBJECT
public:
Q_INVOKABLE void doSomething(quint64 x, /* what goes here? */ jsCallback)
{
x += 1;
// I suspect this will require a invocation mechanism but
// this shows what I'd like to do
jsCallback(x);
}
};
Und in meiner QML möchte ich Folgendes tun:
Rectangle {
function myCallback(x){
console.log("x=" + x);
}
MouseArea{
anchors.fill: parent
onClicked:{
myObject.doSomething(2, myCallback);
}
}
}
So dass, wenn ich auf das @ klicRectangle
, Ich würde sehenx=3
in der Konsole. Wie würde ich den Parameter in C ++ definieren und den Rückruf aufrufen, um dies zu erreichen?
Vielen Dank