0

我的程序中有一个 QTableView,我想自动调整它的大小。我使用了这些功能

headerViewHorizontal->setSectionResizeMode(QHeaderView::ResizeToContents);
headerViewHorizontal->setSectionResizeMode(3, QHeaderView::Stretch);

调整它的大小,它适用于我调整窗口大小时。但随后我需要在表中插入一行,这可能需要调整列的大小。我的问题就在这里。当我插入一行时,其中一个字段太大并且系统用树点写入它(例如:“12.03 ...”而不是“12.03.2020”)。我需要调整窗口大小以使系统调整列的大小。

是否有一个我可以调用来强制更新列宽的插槽?

先感谢您 !

PS我正在使用带有c ++的Qt5。

4

1 回答 1

1

感谢@Scheff,我的问题得到了解答。

解决方案是将resizeColumnToContent()用于没有拉伸调整大小模式的列之一。会互相更新。

编辑:此解决方案仅在您调用 resizeColumnToContent() 的列必须更改其宽度时才有效。否则你必须互相调用 resizeColumnToContent(int column) 。

于 2020-10-09T16:31:40.563 回答