求助Qt的QTreeView的这种效果是怎么实现的?

蓝域小兵 2017-04-19 06:59:57
请问像这种效果是怎么实现的?

我看了一下源代码,model是重载的QStandardItemModel,然后view是重载的QTreeView,还使用了QStyledItemDelegate做委托,但是我对delegate使用不是很熟悉。

这种像标题一样的效果是怎么实现的?我添加之后都会分成两列,左右颜色不同,像下面这样

而且应该不是将第一行左右两列颜色设为一样这种做法,因为
从这张图看出标题行明显只有一列


拜托各位大神了!最好能给个简单的源码。。
下面是我的上面那张图的源码
void MainWindow::showProperties()
{
QStandardItem *headerCSObject = new QStandardItem(QStringLiteral("Cloud"));
headerCSObject->setBackground(QBrush(QColor(169,169,169)));
headerCSObject->setAccessibleDescription("CS Object");

QStandardItem *Name = new QStandardItem(QStringLiteral("file'name"));
QStandardItem *valueName = new QStandardItem(QStringLiteral("****.pcd"));

propertiesModel->appendRow(headerCSObject);

QList<QStandardItem *> rowItems;
rowItems.push_back(Name);
rowItems.push_back(valueName);

propertiesModel->appendRow(rowItems);

}
...全文
876 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
bixiaoxia 2017-04-21
  • 打赏
  • 举报
回复
setFirstColumnSpanned

16,211

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧