塔防三国志插件:Qt QTableWidget个人注意事项

来源:百度文库 编辑:偶看新闻 时间:2024/04/29 22:26:03
1、在插入一行之后,QTableWidget会自动把行首的数字从0开始设置,不需要我们写代码。
2、以下引用Qt论坛的一个帖子:
@1.高速更新慢的问题:
如果使用item方式的话,高速更新会比较慢,你可以使用QTableView+QStandardItemModel的模式,更新非常快,同时占系统资源极少!
本来嘛,数据更新就应该使用mvc模式,qt中提供的item形式的控件只是为了在低速时提供编码的便捷而已,小东西用他开发快,大的东西还是用qt的model-view组合

@2.内存泄露问题
如果使用item型,则可以使用如下代码释放资源
delete tableWidget_his->takeItem(i, j);
不过要注意两点:
(1)已经删除了item,但是table还保留着该位置(i,j),此时再使用item(i,j)会返回无效指针,同理,此时对(i,j)位置做的数据更新会引发异常
(2)当你删除了整行的item后,要记得删除row,使用removeRow
3、在删除行的时候要使用这样的句式:

for(k=useLessRow-1;k>=0;k--)

而不是k++的句式,因为删除之后各行的序号会变化。如果使用k++的句式,可能只能删掉大约N/2行。