要在QTreeView及其子项中隐藏下箭头,可以通过设置QTreeView的样式表来实现。
以下是一个示例代码:
#include <QApplication>
#include <QStandardItemModel>
#include <QTreeView>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QStandardItemModel model;
QStandardItem *rootItem = model.invisibleRootItem();
for (int i = 0; i < 3; ++i) {
QStandardItem *item = new QStandardItem("Parent " + QString::number(i+1));
rootItem->appendRow(item);
// 隐藏下箭头
item->setChildIndicatorPolicy(QTreeWidgetItem::DontShowIndicator);
for (int j = 0; j < 5; ++j) {
item->appendRow(new QStandardItem("Child " + QString::number(j+1)));
}
}
QTreeView treeView;
// 设置样式表,隐藏所有下箭头
treeView.setStyleSheet("QTreeView::branch {image: none;}");
treeView.setModel(&model);
treeView.show();
return app.exec();
}
在这个示例中,我们首先创建了一个QStandardItemModel,并添加了多级的父子关系。然后,我们创建了一个QTreeView,并通过调用setStyleSheet()函数设置了样式表。在样式表中,我们使用QTreeView::branch
选择器,并将image
属性设置为none
来隐藏所有的下箭头图标。
运行该示例代码,你会看到QTreeView及其子项中都没有显示下箭头。
内容由零声教学AI助手提供,问题来源于学员提问