Python ObjectListView 有一个不可编辑的列

1 投票
1 回答
521 浏览
提问于 2025-04-16 12:55

我有一个可编辑的ObjectListView,设置方法是:

self.TrackOlv.cellEditMode = ObjectListView.CELLEDIT_SINGLECLICK

这样做后,我遇到了两个奇怪的问题。

1) 我无法编辑第一个单元格/列。这是因为OLV把它当作主键处理吗?我想我可以通过给我的对象添加一个新的属性来解决这个问题,然后不显示这个属性,但这样做感觉有点不太好。

2) 在我第一列的第一个字符前面有大约4个字符的空白。这正常吗?这包括标准的蓝色/黄色线条效果。我看到的是先有空白,然后才是列的文本和颜色效果。这不是大问题,只是想知道这是否正常。

1 个回答

1

1.) 你每一列都设置了isEditable=True吗?

first_col = ColumnDefn('Name', 'left', -1, 'name', isEditable=True)

在我的对象列表视图(OLV)中,这样做效果很好,另外还需要;

self.TrackOlv.cellEditMode = self.TrackOlv.CELLEDIT_SINGLECLICK

2.) 你可以在这里了解为什么会这样。简单来说,如果你不需要排序功能,可以去掉这个空隙。

撰写回答