将网页加载到QML XmlListModel时出现问题

时间:2011-05-31 16:35:24

标签: qml

import QtQuick 1.0

Rectangle {
  Component {
    id: delegate
        Text{text: title}
  }

  ListView {
    y:10
    id: view
    anchors.fill: parent
    model: model
    delegate: delegate
  }


  XmlListModel {
    id:model
    source: "http://www.w3.org/"
    query: "/html/head"
    namespaceDeclarations: "declare default element namespace 'www.w3.org/1999/xhtml/';"

    XmlRole { name: "title"; query: "title/string()" }
  }
}

我希望我的模型现在包含一个标题=“万维网联盟(W3C)”的元素 但没有显示任何内容。 model.count为零,但model.progress为1 我使用了错误的命名空间声明吗?

非常感谢

帕特里克

2 个答案:

答案 0 :(得分:1)

试试这个:

XmlRole { name: "title"; query: "title[1]/string()" }

在数组中输入1,表示您要检索第一个标题。

答案 1 :(得分:0)

命名空间必须是文档中声明的完全命名空间。声明的命名空间应该是“http://www.w3.org/1999/xhtml”而不是“www.w3.org/1999/xhtml”。