开发者

cut a program in three files QML (Model / View / Controller)

开发者 https://www.devze.com 2023-03-15 02:36 出处:网络
I want to separate my program into 3 QML files: One QML file that contains the data model (XMLlistModel), another that includes the views (ListView开发者_如何学Go), and the third to launch the program

I want to separate my program into 3 QML files: One QML file that contains the data model (XMLlistModel), another that includes the views (ListView开发者_如何学Go), and the third to launch the program.

import QtQuick 1.0

Item {

    width: 800
    height: 480

    XmlListModel {
        id: forecastModel
        source: "http://www.google.com/ig/api?weather=&hl=fr"
        query: "/xml_api_reply/weather/forecast_information"
        XmlRole { name: "city"; query: "city/@data/string()" }
    }

    ListView {
        x: 145; y: 325; width: 594; height: 48;
        model: forecastModel
        delegate: Text {
            font.family: "Univers LT Std"; color: "#c8c8c8"; width: parent.width; font.pixelSize: 30
            text: city
            anchors.centerIn: parent.centerIn
        }
    }
}


That would be something like

ForecastModel.qml

XmlListModel {
    source: "http://www.google.com/ig/api?weather=&hl=fr"
    query: "/xml_api_reply/weather/forecast_information"
    XmlRole { name: "city"; query: "city/@data/string()" }
}

ForecastView.qml

ListView {
    x: 145; y: 325; width: 594; height: 48;
    delegate: Text {
        font.family: "Univers LT Std"; color: "#c8c8c8"; width: parent.width; font.pixelSize: 30
        text: city
        anchors.centerIn: parent.centerIn
    }
}

main.qml

import QtQuick 1.0

Item {    
    width: 800
    height: 480

    ForecastModel {
        id: forecastModel
    }

    ForecastView {
        model: forecastModel
    }
}
0

精彩评论

暂无评论...
验证码 换一张
取 消