gpt4 book ai didi

javascript - 无法将 QQuickText 分配给 QString

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:16:36 25 4
gpt4 key购买 nike

我正在尝试在 qml-javascript 中动态创建对象。创建对象的函数是:

function createSpriteObjects(xPos,yPos,cnt,imgsrc,jsonObject) {
var title;
title = jsonObject.matches[cnt].recipeName;
var component = Qt.createComponent("FlickItem.qml");
component.createObject(wall.contentItem, {"color":"white", "x":xPos,"y":yPos,"src":imgsrc,"opacity":1,"title":title});
}

接收文件(FlickItem.qml)有一个属性字符串标题,稍后分配给文本项的文本字段:

import QtQuick 2.0

Rectangle {
id: name
opacity: 0
property string title: ""
width:100
height:100
color:"white"

property string src: ""

Image {
id:recipeimages
source: src
width:240
height:160
}
Text {
id: title
anchors.bottom: recipeimages.bottom
anchors.horizontalCenter: recipeimages.horizontalCenter
anchors.bottomMargin: 5
color: "white"
font.pixelSize: 24
text:title
}

返回以下错误:

unable to assign QQuickText to QString

有什么办法解决这个问题吗?

最佳答案

Rectangle {
id: name
//...
property string title: "" <------ title
//...
}

Text {
//...
id: title <----- title
//...
text:title <---- which title ?!?!?!
}

问题是您有一个 property 绑定(bind)到 title 标识符,还有一个 id 绑定(bind)到 title 标识符。根据您的输出,您可能正在尝试从 id(而不是 property)分配文本。

更改 Text 组件的 id 应该可以解决您的问题。

关于javascript - 无法将 QQuickText 分配给 QString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15890871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com