Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt中的表格标题中可以有多行吗?_Qt_Qt4 - Fatal编程技术网

Qt中的表格标题中可以有多行吗?

Qt中的表格标题中可以有多行吗?,qt,qt4,Qt,Qt4,我使用的是Qt4,我有一个QTableView,它使用自定义模型显示数据。我希望在表头有两行,理想情况下,第一行中的一些单元格跨越多个列。这可能吗 您可以通过创建QTableWidgetItem然后使用setHorizontalHeaderItem()来创建自定义标题。该方法采用列号,因此我不确定这是否允许本机跨多个列——但是,至少可以对多个列使用相同的QTableWidgetItem 至于在标题中使用两行,我认为目前不支持这样做。但是,如果您有雄心壮志的话,您可以通过滚动您自己的派生类QTab

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

您可以通过创建
QTableWidgetItem
然后使用
setHorizontalHeaderItem()
来创建自定义标题。该方法采用列号,因此我不确定这是否允许本机跨多个列——但是,至少可以对多个列使用相同的
QTableWidgetItem


至于在标题中使用两行,我认为目前不支持这样做。但是,如果您有雄心壮志的话,您可以通过滚动您自己的派生类
QTableWidget
来添加此功能。

我也在寻找解决此问题的方法。我发现这个类: 用户Barmaglodd(Krasnoshchekov Petr)访问qt-apps.org

这个解决方案超越了你(和我)的需要。另外,由于他们的版权声明,我不能使用他们的解决方案

Andy Shaw从blog.qt.digia.com向您展示了如何在标题上覆盖QComboxes。在我的解决方案中,我对另一个标题视图做了同样的事情。这与他们的做法相似。对于这个解决方案,您确实需要同时为QTableWidget和QHeaderView子类化。另外,如果您想让用户调整需要额外工作的列宽

提示:重载SizeHint以提供“main”标题视图正常高度的2x高度,将主标题视图的文本与底部对齐,并在正常标题视图的顶部绘制另一个标题视图,在

showEvent(QShowEvent* e)

方法。

关于QTableView的多条标题行,我遇到了类似的问题。我在列标题文本中使用了一个简单的“\n”来解决这个问题。

给人的印象是,我制作了一个Python端口和一个简单的模型,用于在QTableView中显示带有多级标题(多索引)的数据帧


以下是第一个结果。upd:使用大数据帧的速度非常慢

您的第一个链接非常棒,但我想知道在什么情况下,您可能会发现BSD许可代码由于许可证而无法使用?@Predelnik,我不确定;我一定把这个项目的许可证和另一个混淆了。