以下内容均建立在Item是new出来的情况下!
1.removeItemWidget与takeItem
removeItemWidget与takeItem均不会删除该Item,就是不会进行delete;
removeItemWidget只是取消了显示该Item,QListWidget::clear 的时候还是会将该Item删除;
takeItem则是取消QListWidget与Item之间的关联,需要自己手动delete;
QListWidgetItem* item = ui.listWidget->takeItem(m_selectRow);
delete item;
具体Qt相关源码可以参考:https://www.cnblogs.com/kuikuitage/p/12829161.html
2.currentRowChanged信号
void<

本文揭示了Qt中的QListWidget中removeItemWidget和takeItem的区别,前者不删除Item但隐藏,后者断开关联需手动delete。同时,currentRowChanged信号在删除Item后的意外行为需注意。

893

被折叠的 条评论
为什么被折叠?



