Qtablewidget不能顺利滚动

时间:2013-06-26 15:45:57

标签: python scroll qtablewidget

问题:我的QTableWidget单元格中填充了文本(10列)。我发现无论我有多少行(10或100000)滚动超过3000的行超过3000是非常慢和不够平滑(我已经使用table.verticalHeader().sectionSize(i)找出每行的高度)。

我尝试过做的事情:所以我尝试使用table.setRowHeight(i,3000)设置这些行的高度,但是当我滚动这些行时,我会延迟1- 5个secunds。同样在这种情况下,我需要手动调整行的高度,以便查看该行中的所有文本(因为它是cuted),而且也很慢。

问题:我需要为所有较小的行执行table.resizeRowsToContent(),因此我认为解决方案是设置表格中每一行的高度限制。有setMinimumSectionSize()方法,但我找不到任何最大尺寸,所以我该怎么办呢?是否有可能在每个单元格内都有滚动条,其中高度> 3000,这样我可以滚动浏览该单元格内的文本?也许这会加速滚动表格?

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

这就是我解决它的方法: 在使用文本填充表格单元格时,如果我的文字有超过1000行(text.count("\n")),我将其放在QTextEdit()中,然后使用setCellWidget进行设置。原因我没有将它们全部放在QTextEdit()中,因为Windows可以显示有限数量的GUI元素(< 20000),正如我所说,我有10列x最多100000行