找了好久没找到,QT中有没有树型表格这种控件???

freshlylife 2013-07-15 09:57:35
请教大牛,如题

就是表格中的某个记录可以树状展开成多行,也就是树形表格,树状表格

谢谢!
...全文
919 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
DevilBox 2014-11-24
  • 打赏
  • 举报
回复
可以给我也发个邮箱吗?1855953390@163.com ,谢谢了啊。
freshlylife 2013-07-17
  • 打赏
  • 举报
回复
多谢二狗大神给的思路,结贴,分奉上!
freshlylife 2013-07-16
  • 打赏
  • 举报
回复
谢谢二狗大神,太meet我现在的需要了 但是您给的link,我打不开,可否发我邮箱? 多谢了, freshlylife@tom.com 感谢!
Inhibitory 2013-07-16
  • 打赏
  • 举报
回复
引用 11 楼 freshlylife 的回复:
谢谢公孙二狗,我不太会用QTreeView, 是否可以给我下相关代码? 还有,这个表格是否可以像QTableWidget一样,最左侧有一列行号? 需要如何加上? 谢谢了
默认的没注意过可不可以,但是如果用两颗QTreeView可以实现,连动展开与关闭,我的代码正好实现了这一功能。 代码在dropbox上,但是打不开,试试看能不能下载:https://www.dropbox.com/sh/kotq6elivlw5cal/0Q1YhumbkK
freshlylife 2013-07-16
  • 打赏
  • 举报
回复
谢谢公孙二狗,我不太会用QTreeView, 是否可以给我下相关代码? 还有,这个表格是否可以像QTableWidget一样,最左侧有一列行号? 需要如何加上? 谢谢了
Inhibitory 2013-07-16
  • 打赏
  • 举报
回复
QTreeView {
    show-decoration-selected: 1;
}

QTreeView::item {
    border: 1px solid #d9d9d9;
    border-left-color: transparent;
    border-top-color: transparent;
}

QTreeView::item:selected {
	color: black;
	background: rgba(0, 0, 0, 20);
}

QTreeView::branch {
    border-bottom: 1px solid #d9d9d9;
	background: palette(base);
}

QTreeView::branch:closed:has-children:!has-siblings,
QTreeView::branch:closed:has-children:has-siblings {
        border-image: none;
        image: url(:/images/close.png);
}

QTreeView::branch:open:has-children:!has-siblings,
QTreeView::branch:open:has-children:has-siblings  {
        border-image: none;
        image: url(:/images/open.png);
}
Inhibitory 2013-07-16
  • 打赏
  • 举报
回复
基础都是基于已经实现的联动展开。
Inhibitory 2013-07-16
  • 打赏
  • 举报
回复
Inhibitory 2013-07-16
  • 打赏
  • 举报
回复
把一棵树用来显示行号,即第二列存储行号,隐藏第一列。
看图吧


freshlylife 2013-07-16
  • 打赏
  • 举报
回复
引用 12 楼 Inhibitory 的回复:
[quote=引用 11 楼 freshlylife 的回复:] 谢谢公孙二狗,我不太会用QTreeView, 是否可以给我下相关代码? 还有,这个表格是否可以像QTableWidget一样,最左侧有一列行号? 需要如何加上? 谢谢了
默认的没注意过可不可以,但是如果用两颗QTreeView可以实现,连动展开与关闭,我的代码正好实现了这一功能。 代码在dropbox上,但是打不开,试试看能不能下载:https://www.dropbox.com/sh/kotq6elivlw5cal/0Q1YhumbkK[/quote] hi,二狗好,看到代码,新做了两个treewiget, 但是如何像QTableWidget一样拥有左边的行号呢列呢? 请教啊,谢谢
xcyl 2013-07-16
  • 打赏
  • 举报
回复
引用 7 楼 Inhibitory 的回复:
正好有图为证
您用的是QTreeView::item { border: xxxxxxxx; }吗
Inhibitory 2013-07-15
  • 打赏
  • 举报
回复
QTreeView/QTreeWidget就是树形表格
_Gx 2013-07-15
  • 打赏
  • 举报
回复
QTreeWidget/QTreeView?
donwmufromdying 2013-07-15
  • 打赏
  • 举报
回复
热心的楼上。楼主可以结了
Inhibitory 2013-07-15
  • 打赏
  • 举报
回复
正好有图为证
Inhibitory 2013-07-15
  • 打赏
  • 举报
回复
就是QTreeView或者QTreeWidget,再用QSS设置表格线,前不久我还在做,错不了
jdwx 2013-07-15
  • 打赏
  • 举报
回复
不就是比QTreeView多表格线吗?
smq 2013-07-15
  • 打赏
  • 举报
回复
没有,得自己实现
freshlylife 2013-07-15
  • 打赏
  • 举报
回复
楼上二位,我要找的是树形表格,不是树控件这么简单

贴个图吧,不知道哪有QT这样的控件, 项可以作为树展开层级,并且一定要有表格线。



16,216

社区成员

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

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