从C++更改 QML 图像源

Change QML Image source from C++

本文关键字:图像 QML 更改 C++      更新时间:2023-10-16

如果你看看下面的示例,我可以使用QT从我的C++代码中更改QML对象的属性。

C++

QQuickItem* objectimage = quickView->rootObject();
QObject *im = objectimage->findChild<QObject*>("rect");
im->setProperty("color", "red");

QML

Image {
objectName: "ima"
id:pic
source: "bgnight.png"
Rectangle{   
objectName: "rect"
id:redRect1
width: 100
height: 100
x: 130
y:230
color:"transparent"

我的问题是你如何以与 C 相同的方式更改图像的来源。 我想从C++更改 QML 的背景图像。

Image 
{
property string src: "bge.png"
source: src
objectName: "ima"
id:pic
}

Qt只有C++个api,但你可以创建单独的包装库,它具有C函数定义但具有C++实现