带有QtableWidget的垂直滚动条

时间:2013-03-08 02:52:47

标签: qt qtablewidget

仅在Mac中观察到此问题。在Winows 7和XP中,一切正常。

在QTable Widget中,我使用setCellWidget()在某些列中添加了一些项目。然而,要在同一行的其他列中添加项目,我使用setItem()。  当我尝试使用垂直滚动条时,使用setItem()添加的项目会正确滚动。但setCellWidget()添加的项目根本不会滚动。他们被冻结了。  我尝试了什么 - [1]我尝试设置样式表 - QString scrollStyleSheet =“QTableWidget {}”; //也尝试了一些变化,但这是最好的ui->deviceGridTable->setStyleSheet(scrollStyleSheet );

它工作正常,只要我不滚动,当项目被添加。在添加新项目之前或添加新项目之后,如果我滚动,它可以正常工作。但是,如果我滚动,同时逐个添加新的iterms,它会显示我刚刚描述的相同的丑陋特征。

[2]我尝试将VerticalScrollMode设为ScrollPerPixel。它根本不起作用。

在添加物品时,我还可以尝试解决垂直滚动问题吗? (仅适用于使用setCellWidget()添加的项目。

问题仅出在Mac OSX 10.8.1上。我使用的是Qt 4.8.3

1 个答案:

答案 0 :(得分:0)

试试这个:

tableWidget.setVisible(0)
tableWidget.setSortingEnabled(0)
... populate tableWidget here ...
tableWidget.setSortingEnabled(1)
tableWidget.setVisible(1)

如果您不使用排序,请仅尝试使用可见性。