我正在尝试将Tree View添加到我的PyGTK应用程序中。
以下是Glade的样子:
还有一个主窗口代码,我正在尝试添加一些数据到我的树视图中:
import gettext
from gettext import gettext as _
gettext.textdomain('repository-notifier')
import gtk
import logging
logger = logging.getLogger('repository_notifier')
from repository_notifier_lib import Window
from repository_notifier.AboutRepositoryNotifierDialog import AboutRepositoryNotifierDialog
from repository_notifier.PreferencesRepositoryNotifierDialog import PreferencesRepositoryNotifierDialog
# See repository_notifier_lib.Window.py for more details about how this class works
class RepositoryNotifierWindow(Window):
__gtype_name__ = "RepositoryNotifierWindow"
def finish_initializing(self, builder): # pylint: disable=E1002
"""Set up the main window"""
super(RepositoryNotifierWindow, self).finish_initializing(builder)
self.AboutDialog = AboutRepositoryNotifierDialog
self.PreferencesDialog = PreferencesRepositoryNotifierDialog
# Code for other initialization actions should be added here.
self.builder.get_object('listLogModel').append([5])
self.builder.get_object('listLogModel').append([6])
self.builder.get_object('listLogModel').append([7])
但是我在运行应用程序时得到的是空树视图:
当我从Glade向Tree View添加行时也是如此。
我做错了什么?
答案 0 :(得分:2)
我认为您需要在TreeViewColumn
下添加ListStore
一些CellRenderer
来显示模型中已有的列。
为此,请选择TreeView
窗口小部件,然后单击Edit
按钮。将打开一个对话框(类似于用于编辑菜单的对话框),以便您可以向列添加列和渲染器。之后,模型中的任何更改都将显示在树视图中。