python - 在Python中将自己的树列表与GTK TreeView/TreeModel同步

标签 python treeview gtk3

在我的应用程序中,我有一个管理我的树的类(简而言之,就像一个文件系统,其中根包含文件夹,包含文件夹等,还包含文件)。我现在遇到的问题是我有重复的列表,i。 e.管理文件系统的类,以及单独的 TreeView/TreeModel,我必须在其中使用数据创建树。这是必要的,因为我的类比树中显示的属性有更多的方法和属性。例如,现在,当我删除文件时,我会更新内部树,并且还必须从 TreeModel 中删除该项目。

是否可以告诉 TreeModel/TreeView 使用我自己的类?当然,我假设我必须修改管理我的树的类,但是我想要的是,当我将文件添加到类中的文件夹时,它将自动添加到 TreeView,同样当我删除它或修改其名称或属性时。

使用Python 2.7.12、Ubuntu 16.04、Gtk3(gi.repository、glade等)

最佳答案

您可以让您的类实现 TreeModel 接口(interface),并直接使用它作为模型,而无需在两个类之间进行同步!

让你的类扩展Gtk.TreeModel,并实现它的 virtual methods .

关于python - 在Python中将自己的树列表与GTK TreeView/TreeModel同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40472005/

相关文章:

python - 如何在编辑后验证 pydantic 对象

treeview - Asp.Net TreeView 具有扩展深度的选定节点

WPF TreeView 悬停时突出显示行

mono - 如何在 GTK+/GTK 中切换全屏模式#

c - GtkStatusBar 卡在一个/随机/位置并希望我将鼠标悬停按钮

python - 数据科学的 Elixir

python - 无需等待的异步任务队列

python - Pandas 有条件地交换两列中的值

c# - 具有多色 TreeNode 文本的 TreeView