我正在使用 wxPythonwx.ListCtrl
来显示表格。对于每一列,我使用该InsertImageStringItem
方法插入新行并用于SetStringItem
添加其他列。在该InsertImageStringItem
方法中,我使用-1
的是图像索引,因此它不应在第一列中显示任何图标。这在 Mac OS X 上完美运行。但在 Windows 上,第一列始终显示图像索引为 0 的图标。
有谁知道是什么问题?
Windows 本机小部件可能需要图像,因为您告诉它您要插入一个。如果您不想在第一列中插入图像,则只需使用 InsertStringItem 代替。
编辑:
根据 wxPython 的创建者 Robin Dunn 的说法:
在 Windows 上,本机 ListView 控件有一个“功能”,如果你给它一个图像列表,那么它会假设你想要显示带有图像的项目,所以它会自动为它们保留空间。解决此问题的一种方法是将所有内容向右移动一列,因此第一列除了为图像保留的空间外没有任何内容。然后你可以将该列的宽度设置为零。
来源:http ://wxpython-users.1045709.n5.nabble.com/wx-ListCtrl-and-its-image-list-td2315539.html