Qt 访问QML中委托内的模型数据

Qt 访问QML中委托内的模型数据,qt,view,model,qml,repeater,Qt,View,Model,Qml,Repeater,是否有方法从视图代理(特别是中继器)访问modelData 我试图使用一个单独的属性,并试图通过model.modelData访问它,但这两种方法都不起作用 请参阅下面的代码快照 提前谢谢 Component { id: comp_1 Rectangle { color: "green" width: 200 height: 200 } } Component { id: comp_2 Rectan

是否有方法从视图代理(特别是中继器)访问
modelData

我试图使用一个单独的属性,并试图通过
model.modelData
访问它,但这两种方法都不起作用

请参阅下面的代码快照

提前谢谢

Component
{
    id: comp_1
    Rectangle
    {
        color: "green"
        width: 200
        height: 200
    }
}

Component
{
    id: comp_2
    Rectangle
    {
        color: "red"
        width: 200
        height: 200

        Text
        {
            anchors.fill: parent
            text: modelData
            horizontalAlignment: Text.AlignHCenter
            verticalAlignment: Text.AlignVCenter
        }
    }
}

function getDelegate(itemName)
{
    if(itemName === "comp1")
        return comp_1;
    else
        return comp_2;
}

Row
{
    Repeater
    {
        id: repeat
        model: ["comp1", "comp2"]
        Loader
        {
            sourceComponent: getDelegate(modelData)
        }
    }
}

可以在委托元素上添加属性

Component {
    id: comp_1
    Rectangle {
        property string valueFromModel
    }
}
并将modelData绑定到它

Loader {
    id: loader
    Binding {
        target: loader.item
        property: "valueFromModel"
        value: model.modelData
    }
}

可以在委托元素上添加属性

Component {
    id: comp_1
    Rectangle {
        property string valueFromModel
    }
}
并将modelData绑定到它

Loader {
    id: loader
    Binding {
        target: loader.item
        property: "valueFromModel"
        value: model.modelData
    }
}
你们看到佩奇了吗?你们看到佩奇了吗?