我有一个带有QTreeWidgetItems的QTreeWidget,有时项目有一个图标.所以我使用以下方式设置图标:
self.setIcon(0, icon)
但是,如何再次删除该图标?
self.setIcon(0, None)
给
TypeError: 'PySide.QtGui.QTreeWidgetItem.setIcon' called with wrong argument types:
PySide.QtGui.QTreeWidgetItem.setIcon(int, NoneType)
Supported signatures:
PySide.QtGui.QTreeWidgetItem.setIcon(int, PySide.QtGui.QIcon)
解决方法:
为了完整起见,我写下vahancho的注释作为答案.
设置一个空图标:
item.setIcon(column, QtGui.QIcon())
这也很有意义,因为即使没有设置图标
item.icon(column)
确实返回QIcon对象.因此,Qt可能会在内部用空图标预先设置图标.