[python] [pygtk] odchyceni kliku na bunku v treeview

David Hrachovy david.hrachovy na gmail.com
Čtvrtek Červenec 17 16:32:52 CEST 2008


Tohle vypada nadejne. Zkousel jsem to pridat do sveho treeview, ale asi
to pouzivam spatne.

cellRendererButton = CellRendererButton()
tvcCustom = gtk.TreeViewColumn('', cellRendererButton)
tv.append_column(tvcCustom)
tvcCustom.add_attribute(cellRendererButton, "text", 7)
#pozdeji pridavam data do liststore. Na konci je retezec '+' pro
CellRendererButton.
new_ls.append([i["id"],i["title"],i["selling_price"],i["count"],i["cart_count"],pix1,pix2,'+'])

Pri zobrazeni treeview je vsecko ok, ale kdyz kliknu na '+', promeni se
v tlacitko s trema teckama:(
Ten vnitrek CellRendererButton vypada pro me hodne zahadne:) Nevim jak
bych to zeditoval k obrazu svemu. Jako nejlepsi se mi jevi podedit
CellRendererPixbuf a prepsat jen udalost double-clicku na click. Ale
tak jednoduche to asi nebude, ze? 

> Ked som kedysi robil property grid, tak som potreboval vlozit do 
> TreeView tlacidlo a odchytavat click. Teda nieco podobne ako chcete
> vy.
> 
> 
> Spravil som si vlastny renderer. Prikladam ho v prilohe. Urcite ho 
> nebudete chciet pouzit 1:1, ale ako priklad hadam postaci
> 
> David Hrachovy wrote:
> > Zdravim, tohle je muj prvni dotaz na teto konferenci, tak doufam, ze
> > bude stat za to:)
> > Mam treeview. V nem zobrazuji nejake zbozi z liststore. V jednom
> > sloupci zobrazuji pixbuf. Po jednom kliknuti na nejaky cell z toho
> > sloupce bych potreboval, aby se zavolala moje funkce f(). 
> > Konkretne: tukanim na obrazek pluska se zvysi pocet polozek ve
> > skladu. Zkousel jsem to pres signaly row-activated, cursor-changed,
> > ale vzdycky musim kliknout 2x:(
> > Rad uvitam primo ukazky kodu ci jine reseni.
> > Kdyz tak tu hodim i kod pro predstavu.


Další informace o konferenci Python