我非常想要將Qt QQuickItem類的子類用於QML,因此在後臺爲它提供了很多C++邏輯。但是,由於QML將實例化並擁有它,而不是C++端,我不知道如何(如果可能)在系統中的這個新對象和其他C++對象之間傳遞指針或連接。這可能嗎?將QQuickItem指針的子類指定給另一個C++對象
4
A
回答
0
您可以在您的main.cpp
中註冊一個全局QML對象,該對象指向任意的QObject。
Brain *brain = new Brain();
QQmlApplicationEngine engine;
QQmlContext *context = engine.rootContext();
context->setContextProperty("brain", brain);
現在您已經在QML中有全球可用的brain
。你可以把它傳遞給一個自定義組件,例如
VisibleComponent {
id: vico1
width: 300
height: 300
Component.onCompleted: {
vico1.setLogic(brain)
}
}
這需要一個VisibleComponent
Q_INVOKABLE void setLogic(Brain* brain);
。
我有一個運行的代碼項目的這段代碼,讓我知道你是否需要它。
+0
看起來可能,謝謝。 – johnbakers
相關問題
- 1. 將一個類對象的指針分配給另一個類對象C++
- 2. 將指針傳遞給另一個類中的新對象(C++)
- 3. 無法將指針指定給另一個指針
- 4. 將對象指針向量傳遞給一個類(C++)
- 5. 返回一個指向一個對象數組的指針,並將其指定給一個指針
- 6. 將一個接口指針分配給C++中的另一個接口指針
- 7. 將對象分配給指針C++
- 8. 將對象指定給另一個對象
- 9. 指向一個對象和一個指針在C(如何指向另一個指針)之間的區別
- 10. C++刪除指向包含另一個指針對象
- 11. 分配一個非指針指針? (?子類在C++中的指針類型)
- 12. 將對象的指針傳遞給構造函數中的另一個類
- 13. 將指針分配給另一個指針時發生Segfault
- 14. 將NSArray指針傳遞給指定類型的指針
- 15. 將指針的引用複製到另一個指針C
- 16. 指針tho另一個對象
- 17. C++指向另一個類中的不同類的指針
- 18. 將一個對象的空指針傳遞給一個函數
- 19. 如何在另一個類使用類的指針對象
- 20. C++對象指針
- 21. 如何將指針指向的地址分配給另一個本地指針
- 22. 傳遞指向C++中另一個指針的'const'指針
- 23. 使用另一個指針指向地址的指針C
- 24. C++指向一個類的指針
- 25. 如何指定另一個對象來指向單個對象?
- 26. C++對象 - 返回一個指針
- 27. 將指針指向的數據複製到另一個指針
- 28. 指定另一個指針的地址指針
- 29. 成員函數指針指向另一個對象的方法
- 30. C++將指針從一個派生類轉換爲另一個
「按對象名稱訪問加載的QML對象」[http://qt-project.org/doc/qt-5.0/qtqml/qtqml-cppintegration-interactqmlfromcpp.html](http://qt-project .ORG/DOC/QT-5.0/qtqml/qtqml-cppintegration-interactqmlfromcpp.html)? –