wx.ListCtrl始终在Windows上显示图标

时间:2013-03-25 06:45:50

标签: wxpython listctrl

我正在使用wxPython的wx.ListCtrl来显示表格。对于每个列,我使用InsertImageStringItem方法插入新行并使用SetStringItem添加其他列。在InsertImageStringItem方法中,我使用-1作为图像索引,因此它不应在第一列中显示任何图标。这在Mac OS X上非常有效。但在Windows上,第一列始终显示图像索引为0的图标。

任何人都知道问题是什么?

1 个答案:

答案 0 :(得分:0)

Windows本机窗口小部件可能需要图像,因为您告诉它您要插入图像。如果您不想在第一列中插入图像,则只需使用InsertStringItem。

修改

根据wxPython的创建者Robin Dunn的说法:

在Windows上,本机ListView控件具有“功能”,如果您给出 它是一个图像列表然后它假定你想要显示 带图像的项目,因此它会自动为它们保留空间。一 解决这个问题的方法是将所有内容都移到右边, 所以除了保留的空间外,第一列中没有任何内容 图片。然后你可以将该列的宽度设置为零。

来源:http://wxpython-users.1045709.n5.nabble.com/wx-ListCtrl-and-its-image-list-td2315539.html