Zoals de titel zegt, wil ik een object in een TreeStore opslaan, om later weer uit te lezen, bijvoorbeeld om handelingen er op uit te kunnen voeren, en vooral om een rijn in een TreeView terug te kunnen koppelen naar een domein object. Nu had ik zelf zoiets in gedachten:
Echter krijg ik dan een error: TypeError: value is wrong type for this column.
De reference zegt dit over gobject.TYPE_OBJECT: The fundamental type corresponding to a GObject type.
Daaruit afleidend kan ik me wel voorstellen dat het niet werkt, omdat mijn domein class geen GObject.type is. Verder in de lijst is ook dit te vinden:
gobject.TYPE_POINTER The fundamental type corresponding to a pointer to an anonymous type. This has no corresponding Python type.
Geen idee waar dat voor is, maar het was een poging waard, ook geen succes helaas.
Mijn vraag is dus of dit wel mogelijk is, en hoe ik dat kan doen dan? Of moet ik echt met unieke ID's gaan werken om terug te kunnen koppelen?
Ik heb het al opgelost door gewoon met een IDtje te werken. Maar het blijft wel vaag dat je er geen (willekeurig) object in mag stoppen als je aangeeft dat hij van type object moet zijn.
Python:
1
2
| treeStore = gtk.TreeStore(gobject.TYPE_STRING, gobject.TYPE_OBJECT) treeStore.append(None, [eenDomeinObject.getName(), eenDomeinObject]) |
Echter krijg ik dan een error: TypeError: value is wrong type for this column.
De reference zegt dit over gobject.TYPE_OBJECT: The fundamental type corresponding to a GObject type.
Daaruit afleidend kan ik me wel voorstellen dat het niet werkt, omdat mijn domein class geen GObject.type is. Verder in de lijst is ook dit te vinden:
gobject.TYPE_POINTER The fundamental type corresponding to a pointer to an anonymous type. This has no corresponding Python type.
Geen idee waar dat voor is, maar het was een poging waard, ook geen succes helaas.
Mijn vraag is dus of dit wel mogelijk is, en hoe ik dat kan doen dan? Of moet ik echt met unieke ID's gaan werken om terug te kunnen koppelen?
Ik heb het al opgelost door gewoon met een IDtje te werken. Maar het blijft wel vaag dat je er geen (willekeurig) object in mag stoppen als je aangeeft dat hij van type object moet zijn.
[ Voor 13% gewijzigd door Michali op 20-04-2006 15:06 ]