gpt4 book ai didi

qt - 如何使用 QML Qt 5.5 正确显示 Treeview

转载 作者:行者123 更新时间:2023-12-04 18:04:40 24 4
gpt4 key购买 nike

我正在尝试使用 Qml Qt 5.5 创建正确的 Treeview。
我成功地拥有了一个具有全局根的 Treeview。
但无法找到如何为行项目添加子项。

目前我得到了这样的东西:

    TreeView {
id:listTree
anchors.fill: parent
anchors.leftMargin: 1
headerVisible: false
backgroundVisible: false

selection: ItemSelectionModel {
model: myModel
}
TableViewColumn {
role: "name"
}

itemDelegate: Item {
Text {
anchors.verticalCenter: parent.verticalCenter
color: styleData.textColor
elide: styleData.elideMode
text: styleData.value
}
}

Component.onCompleted: {
model.append({"name":"Never"})
model.append({"name":"gonna"})
model.append({"name":"give"})
model.append({"name":"you"})
model.append({"name":"up"})
model.append({"name":"Never"})
model.append({"name":"gonna"})
model.append({"name":"let"})
model.append({"name":"you"})
model.append({"name":"dow"})
}
}

enter image description here

我想要这样的东西:

enter image description here

我该怎么做 ?

最佳答案

您还可以创建一个 TreeModel 类来扩展 QStandardItemModel并覆盖 roleNames() , 喜欢做 here .要将子节点添加到树中的节点,只需使用 appendRow() .

TreeModel::TreeModel(QObject *parent) : QStandardItemModel(parent)
{
QStandardItem *root = new QStandardItem("root");
QStandardItem *child = new QStandardItem("child");
this->appendRow(root);
root->appendRow(child);
}

关于qt - 如何使用 QML Qt 5.5 正确显示 Treeview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33041377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com