Qt中的表头可以有多行吗? [英] Can I have more than one line in a table header in Qt?

查看:21
本文介绍了Qt中的表头可以有多行吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是Qt4,我有一个QTableView,它使用自定义模型显示数据。我希望在表头中有两行,理想情况下第一行的一些单元格跨越多个列。这可能吗?

推荐答案

我也在寻找此问题的解决方案。我找到了这个班级: HierarchicalHeaderView 在qt-apps.org上,用户Barmaglod(Krasnoshchekov Petr)。

该解决方案超出了您(和我)的需求。此外,由于他们的版权声明,我无法使用他们的解决方案。

This post,摘自Andy Shaw的Blo.qt.divera.com,向您展示了如何将QComboBox覆盖在标题上。在我的解决方案中,我用另一个标题视图做了同样的事情。这类似于他们overlaid a QTableView on a QTableView for the Qt Frozen column example。对于此解决方案,您需要同时派生QTableWidget和QHeaderView的子类。此外,如果您想让用户调整列宽,则需要额外的工作。

提示:重载SizeHint以使高度为"Main"标题视图正常高度的2倍,将主标题视图的文本与底部对齐,并在正常标题视图的顶部绘制另一个标题视图,在

中执行此操作
showEvent(QShowEvent* e)

方法。

这篇关于Qt中的表头可以有多行吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆