我正在研究如何在 Python(2.7 或更高版本)中创建一个 GtkIconView,它具有用于 IconView 的文本元素的自定义 CellRendererText。

这样做的原因是我需要在 iconview 创建期间覆盖某些属性。

环顾四周,我发现了这个用于 TreeViews 的 PyGtk 示例 - 类似,但我需要一个用于 IconView 的自省(introspection)示例

  • Set cellrenderertext foreground color when a row is highlighted

  • 我看过 C++ 文档,但我真的不明白如何将 cellrenderertext 分配给 IconView。
  • http://developer.gnome.org/gtk3/stable/GtkIconView.html

  • 我再次找到了一些 python 文档来为树 View 创建自定义 cellrenderer
  • http://www.scribd.com/doc/99516129/41/CellRendererText

  • 任何人都可以指出我如何修改 IconView 的示例的正确方向

    最佳答案

    Gtk.IconView 继承自 Gtk.CellLayout ,因此您可以使用单元格布局函数来替换当前的文本渲染器。有以下特点:

    renderers = iconview.get_cells()
    iconview.clear()
    for r in renderers:
        if not isinstance(r, Gtk.TextRenderer):
            iconview.pack_start(r)
        else:
            iconview.pack_start(my_custom_renderer)
    

    我不知道这是否有效,但这就是我要做的。

    关于python - 如何使用自定义 CellRendererText 创建 Gtk Iconview,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14149324/

    10-11 21:53