所以我有这个 TreeView/TreeStore,我用列表中的数据填充它。我的应用程序仅使用上述列表作为参考数据。TreeStore 只是为显示而构建的。并且可以通过倾斜列标题来使用 TreeView。因为.set_sort_column_id()用于每列的初始化。
问题是,以下代码总是返回显示中单击的行号:
# convert ListStore iter to row number
def rowno(self):
(model, iter) = self.MY_LIST_STORE.get_selection().get_selected()
return model.get_path(iter)[0]
它应该这样做。只要显示原始的未排序列表,这对我来说就很好。使用 TreeView(和 TreeStore?)后,显示的行号 ( .get_path
) 不再对应于我的原始数据存储中的行号。
我怎样才能映射这个?或者我怎样才能找出哪个选定的路径号对应于最初传递的 TreeView 列表中的哪个条目?
(当然,我可以在 TreeStore 中插入一个假列来保留我原来的行号。但是必须有某种原生方式来实现它?)