Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Hai, I'm unable to display data from xmllistmodel to main.qml?
Forum Updated to NodeBB v4.3 + New Features

Hai, I'm unable to display data from xmllistmodel to main.qml?

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
qml model qmlxmllistmodelqml lineseriesqml delegate
4 Posts 2 Posters 456 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    Joshika_Namani
    wrote on 11 Oct 2021, 12:04 last edited by
    #1

    main.qml
    import QtQuick 2.0
    import QtCharts 2.0
    import QtQuick.XmlListModel 2.0
    import QtQuick 2.15
    import QtQuick.Controls 2.15
    import QtQml.Models 2.15

    ApplicationWindow {
    width: 1000
    height: 1000
    visible: true
    title: qsTr("Model")

    ChartView {
        id: chartView
        title: "Driver Speeds, lap 1"
        anchors.fill: parent
        legend.alignment: Qt.AlignTop
        animationOptions:ChartView.AllAnimations
        antialiasing: true
    
    }
    XMLLIST{
        id:list
    }
    
    
    Component {
        id: fruitDelegate
        Row {
            spacing: 10
            Text { text: speedTrap }
            Text { text:  driver }
            Text { text:  speed }
        }
    }
    
    ListView {
        anchors.fill: parent
        model: list
        delegate: fruitDelegate
    }
    

    }

    xmllist.qml
    import QtQuick.XmlListModel 2.0
    XmlListModel {
    
        // Hard-coded test data
        xml: "<results><row><speedTrap>0</speedTrap><driver>Fittipaldi</driver><speed>104.12</speed></row>"
            +"<row><speedTrap>0</speedTrap><driver>Stewart</driver><speed>106.12</speed></row>"
            +"<row><speedTrap>0</speedTrap><driver>Hunt</driver><speed>106.12</speed></row>"
    //![1]
            +"<row><speedTrap>1</speedTrap><driver>Fittipaldi</driver><speed>115.12</speed></row>"
            +"<row><speedTrap>1</speedTrap><driver>Stewart</driver><speed>114.12</speed></row>"
            +"<row><speedTrap>1</speedTrap><driver>Hunt</driver><speed>115.12</speed></row>"
            +"<row><speedTrap>2</speedTrap><driver>Hunt</driver><speed>165.23</speed></row>"
            +"<row><speedTrap>2</speedTrap><driver>Fittipaldi</driver><speed>175.23</speed></row>"
            +"<row><speedTrap>2</speedTrap><driver>Stewart</driver><speed>168.23</speed></row>"
            +"</results>"
    //![2]
        query: "/results/row"
    
        XmlRole { name: "speedTrap"; query: "speedTrap/string()" }
        XmlRole { name: "driver"; query: "driver/string()" }
        XmlRole { name: "speed"; query: "speed/string()" }
        }
    
    
    
    B 1 Reply Last reply 11 Oct 2021, 19:22
    0
    • J Joshika_Namani
      11 Oct 2021, 12:04

      main.qml
      import QtQuick 2.0
      import QtCharts 2.0
      import QtQuick.XmlListModel 2.0
      import QtQuick 2.15
      import QtQuick.Controls 2.15
      import QtQml.Models 2.15

      ApplicationWindow {
      width: 1000
      height: 1000
      visible: true
      title: qsTr("Model")

      ChartView {
          id: chartView
          title: "Driver Speeds, lap 1"
          anchors.fill: parent
          legend.alignment: Qt.AlignTop
          animationOptions:ChartView.AllAnimations
          antialiasing: true
      
      }
      XMLLIST{
          id:list
      }
      
      
      Component {
          id: fruitDelegate
          Row {
              spacing: 10
              Text { text: speedTrap }
              Text { text:  driver }
              Text { text:  speed }
          }
      }
      
      ListView {
          anchors.fill: parent
          model: list
          delegate: fruitDelegate
      }
      

      }

      xmllist.qml
      import QtQuick.XmlListModel 2.0
      XmlListModel {
      
          // Hard-coded test data
          xml: "<results><row><speedTrap>0</speedTrap><driver>Fittipaldi</driver><speed>104.12</speed></row>"
              +"<row><speedTrap>0</speedTrap><driver>Stewart</driver><speed>106.12</speed></row>"
              +"<row><speedTrap>0</speedTrap><driver>Hunt</driver><speed>106.12</speed></row>"
      //![1]
              +"<row><speedTrap>1</speedTrap><driver>Fittipaldi</driver><speed>115.12</speed></row>"
              +"<row><speedTrap>1</speedTrap><driver>Stewart</driver><speed>114.12</speed></row>"
              +"<row><speedTrap>1</speedTrap><driver>Hunt</driver><speed>115.12</speed></row>"
              +"<row><speedTrap>2</speedTrap><driver>Hunt</driver><speed>165.23</speed></row>"
              +"<row><speedTrap>2</speedTrap><driver>Fittipaldi</driver><speed>175.23</speed></row>"
              +"<row><speedTrap>2</speedTrap><driver>Stewart</driver><speed>168.23</speed></row>"
              +"</results>"
      //![2]
          query: "/results/row"
      
          XmlRole { name: "speedTrap"; query: "speedTrap/string()" }
          XmlRole { name: "driver"; query: "driver/string()" }
          XmlRole { name: "speed"; query: "speed/string()" }
          }
      
      
      
      B Offline
      B Offline
      Bob64
      wrote on 11 Oct 2021, 19:22 last edited by
      #2

      @Joshika_Namani works for me:

      e12aeabf-f7fd-4809-b858-c8c169314cdd-image.png

      I changed a couple of things:

      1. XMLLIST in main.qml -> XmlList
      2. Saved the 'xmllist.qml' as 'XmlList.qml'
      3. Got rid of the chart stuff.
      J 1 Reply Last reply 13 Oct 2021, 07:39
      0
      • B Bob64
        11 Oct 2021, 19:22

        @Joshika_Namani works for me:

        e12aeabf-f7fd-4809-b858-c8c169314cdd-image.png

        I changed a couple of things:

        1. XMLLIST in main.qml -> XmlList
        2. Saved the 'xmllist.qml' as 'XmlList.qml'
        3. Got rid of the chart stuff.
        J Offline
        J Offline
        Joshika_Namani
        wrote on 13 Oct 2021, 07:39 last edited by
        #3

        @Bob64
        Thanks for your reply, but I'm getting error like Xmllist is not a type.

        1 Reply Last reply
        0
        • J Offline
          J Offline
          Joshika_Namani
          wrote on 13 Oct 2021, 07:53 last edited by
          #4

          Its working now, due to main.cpp it didn't work. Thanks a lot. can I place those speed values in lineseries chart instead of Listview can i take lineseries chart

          1 Reply Last reply
          0

          1/4

          11 Oct 2021, 12:04

          • Login

          • Login or register to search.
          1 out of 4
          • First post
            1/4
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved