如何使用Glade和Gtk创建树形视图?

时间:2018-11-06 14:22:46

标签: python treeview gtk glade

我正在尝试与Glade和Gtk建立接口。

在Glade中:我创建了一个标记为liststore的列表存储。我没有在该列表存储中添加任何列。 然后,我创建了一个标记为treeview的树视图,并选择了列表存储作为该树视图的模型。

这是我的代码:

class CellRenderePartitions(Gtk.Box):
    self.liststore = builder.get_object('liststore')
    self.treeview = builder.get_object('treeview')
    self.treeview.model = self.liststore

    media = Gtk.CellRendererText()
    col = Gtk.treeViewColumn("Media",media,text=1)
    col.set_sizing(Gtk.TreeViewColumnSizing.AUTOSIZE)
    col.set_expand(True)

    self.liststore.append(None)

我收到此错误:

Gtk_CRITICAL **:gtk_list_store_get_vlue:断言列 n_columns'失败

我知道我的代码的最后一行正在引起此麻烦,但是我不明白为什么,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您的回答是您自己的问题。您的列表存储中没有列,但是您向其中附加了一些数据。是的,附加None将被视为一个值,因此您需要一列将其存储在其中。