相关疑难解决方法(0)

QML TableView具有动态列数

我一直在尝试使用QML TableView来显示QAbstractTableModel.等式中缺少的部分似乎是不可能有一个可变数量的列TableView,尽管覆盖QAbstractItemModel::roleNames哪个应该告诉Qt我的列的数量和名称.我尝试仅使用QML进行测试:

import QtQuick 2.0
import QtQuick.Controls 1.1

Rectangle {
    anchors.fill: parent
    property real showImage: 1.0
    width: 500
    TableView {
        id: myTable
        model: myModel
        //        TableViewColumn {
        //            role: "title"; title: "Name"; width: 200
        //        }
    }

    ListModel {
        id: myModel
        ListElement {
            title: "item one"
        }
        ListElement {
            title: "item two"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在运行时,尽管TableView包含ListElement在其中定义了角色的s的模式,但这并未显示任何内容.

但是,如果上面的代码被取消注释并且TableViewColumn定义了a ,则该列将按预期显示该角色的数据,但该表仍将不显示任何其他角色.显然,这只适用于静态定义的列数,而不适用于直到运行时才知道列数的情况.

给出的示例与我的实际示例基本相同,只是我的模型是用C++定义的.

似乎这可能已经在这里被问过,但它没有得到任何回应.

编辑:我曾尝试调用javascript函数:

function …
Run Code Online (Sandbox Code Playgroud)

c++ qt qml qtquick2

10
推荐指数
1
解决办法
7503
查看次数

标签 统计

c++ ×1

qml ×1

qt ×1

qtquick2 ×1