Flame of udun
Flame of udun

Reputation: 2237

Different Column values not displayed in PYGTK TreeView

I executed this program :

#!/usr/bin/env python

import gtk

class CellRenderer:
    def __init__(self):
        window = gtk.Window()
        window.set_default_size(200,200)

        liststore = gtk.ListStore(str, str)
        liststore.append(["Fedora","http://fedoraproject.org"])
        liststore.append(["Slackware","http://www.slackware.com"])
        liststore.append(["Sidux","http://sidux.com"])

        treeview = gtk.TreeView(liststore)
        column_text = gtk.TreeViewColumn("Distributions")
        column_sample= gtk.TreeViewColumn("Links")
        treeview.append_column(column_text)
        treeview.append_column(column_sample)

        cellrenderer_text = gtk.CellRendererText()
        column_text.pack_start(cellrenderer_text,False)
        column_text.add_attribute(cellrenderer_text,"text",0)

        cellrenderer_sample = gtk.CellRendererText()
        column_sample.pack_start(cellrenderer_sample, False)
        column_sample.add_attribute(cellrenderer_sample,"text", 0)

        window.connect("destroy", lambda q : gtk.main_quit())
        window.add(treeview)
        window.show_all()

CellRenderer()
gtk.main()

The resultant window I obtained is this :

enter image description here

As you may have noticed, the lists appended to liststore had links in the second index.Why weren't any of those links displayed in the second column?

Upvotes: 1

Views: 136

Answers (1)

New_User123
New_User123

Reputation: 104

You are referring to same index at

column_sample.add_attribute(cellrenderer_sample,"text", 0)

change it to

column_sample.add_attribute(cellrenderer_sample,"text", 1)

Full file.

import gtk

class CellRenderer:
    def __init__(self):
       window = gtk.Window()
       window.set_default_size(200,200)

       liststore = gtk.ListStore(str, str)
       liststore.append(["Fedora","http://fedoraproject.org"])
       liststore.append(["Slackware","http://www.slackware.com"])
       liststore.append(["Sidux","http://sidux.com"])

       treeview = gtk.TreeView(liststore)
       column_text = gtk.TreeViewColumn("Distributions")
       column_sample= gtk.TreeViewColumn("Links")
       treeview.append_column(column_text)
       treeview.append_column(column_sample)

       cellrenderer_text = gtk.CellRendererText()
       column_text.pack_start(cellrenderer_text,False)
       column_text.add_attribute(cellrenderer_text,"text",0)

       cellrenderer_sample = gtk.CellRendererText()
       column_sample.pack_start(cellrenderer_sample, False)
       column_sample.add_attribute(cellrenderer_sample,"text", 1)

       window.connect("destroy", lambda q : gtk.main_quit())
       window.add(treeview)
       window.show_all()

CellRenderer()
gtk.main()

Upvotes: 1

Related Questions