要在C++的QTreeView中显示折叠符号,你可以使用QStandardItemModel来设置每个项目的属性。以下是一个示例代码片段:
#include <QApplication>
#include <QTreeView>
#include <QStandardItemModel>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// 创建模型和根节点
QStandardItemModel model;
QStandardItem *rootItem = model.invisibleRootItem();
// 添加父节点和子节点
QStandardItem *parentItem = new QStandardItem("Parent Item");
rootItem->appendRow(parentItem);
for (int i = 0; i < 5; ++i) {
QString childText = QString("Child Item %1").arg(i);
QStandardItem *childItem = new QStandardItem(childText);
parentItem->appendRow(childItem);
}
// 创建树视图并设置模型
QTreeView treeView;
treeView.setModel(&model);
// 设置展开折叠标志
treeView.setAnimated(true); // 启用动画效果
treeView.setIndentation(20); // 设置缩进大小
treeView.expandAll(); // 默认展开所有项
treeView.show();
return app.exec();
}
在这个示例中,我们创建了一个简单的QTreeView,并通过使用QStandardItemModel和QStandardItem来添加父节点和子节点。然后,我们通过调用setAnimated()方法启用动画效果,并使用setIndentation()方法设置缩进大小。最后,我们调用expandAll()方法将所有项默认展开。
这样,你就可以看到在QTreeView中显示折叠符号的效果了。你可以根据需要进一步定制和扩展这个示例来满足你的需求。
内容由零声教学AI助手提供,问题来源于学员提问