QTableView 列 - 无法设置小宽度
QTableView columns - can't set small width
我有两个带有自己的简单模型的 QTableView。
完成以下操作后:
tv1->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tv1->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tv1->setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents);
tv1->resizeColumnsToContents();
我有这张照片:
这是我想要的:
我尝试过的:
- 在我的模型的 headerData 中设置 sizehintrole,return 我自己的尺寸;
- 将 setSectionResizeMode 更改为 ResizeToContent
- 通过 "setColumnWidth"
使用和不使用调整大小模式设置每列的宽度
- 使用我想要的大小重载 sizehint 制作我自己的委托
- 设置样式表的内边距为 0px;到 QTableView,QTableView::section,QTableView::item
- 使用"header->setDefaultSectionSize"
这些都不起作用。我迫不及待地想用 QPainter 从零开始绘制 table 或跟踪每个源文件以查看实际大小。但在此之前,我将不胜感激任何建议。
您可以尝试将水平 header 的最小部分大小设置为零,这样:
tv1->horizontalHeader()->setMinimumSectionSize(0);
(文档 here)。
我有两个带有自己的简单模型的 QTableView。 完成以下操作后:
tv1->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tv1->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tv1->setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents);
tv1->resizeColumnsToContents();
我有这张照片:
这是我想要的:
我尝试过的:
- 在我的模型的 headerData 中设置 sizehintrole,return 我自己的尺寸;
- 将 setSectionResizeMode 更改为 ResizeToContent
- 通过 "setColumnWidth" 使用和不使用调整大小模式设置每列的宽度
- 使用我想要的大小重载 sizehint 制作我自己的委托
- 设置样式表的内边距为 0px;到 QTableView,QTableView::section,QTableView::item
- 使用"header->setDefaultSectionSize"
这些都不起作用。我迫不及待地想用 QPainter 从零开始绘制 table 或跟踪每个源文件以查看实际大小。但在此之前,我将不胜感激任何建议。
您可以尝试将水平 header 的最小部分大小设置为零,这样:
tv1->horizontalHeader()->setMinimumSectionSize(0);
(文档 here)。