栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

具有多列的GtkTreeView和具有单个自定义类型的GtkListStore(在Python中)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

具有多列的GtkTreeView和具有单个自定义类型的GtkListStore(在Python中)

您需要做两件事:

ListStore
用单个
TYPE_PYOBJECT
列设置a
,然后
set_cell_data_func
在树视图列上使用a来从适当的对象属性中设置单元格文本。

这是一个演示此的示例:

from gi.repository import Gtk, GObjectclass MyClass(object):    def __init__(self, first, last, age):        self.first = first        self.last = last        self.age = agetree_store = Gtk.ListStore(GObject.TYPE_PYOBJECT)tree_store.append([MyClass("foo", "bar", 15)])tree_store.append([MyClass("baz", "qux", 100)])def make_column(caption, getter):    rend = Gtk.CellRendererText()    col = Gtk.TreeViewColumn(caption, rend)    def _set_cell_text(column, cell, model, it, ignored):        obj = model.get_value(it, 0)        cell.set_property('text', getter(obj))    col.set_cell_data_func(rend, _set_cell_text)    return colview = Gtk.TreeView(tree_store)view.append_column(make_column("First", lambda obj: obj.first))view.append_column(make_column("Last", lambda obj: obj.last))view.append_column(make_column("Age", lambda obj: '%d' % obj.age))w = Gtk.Window()w.add(view)w.show_all()Gtk.main()


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/611216.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号