wx tree rechte Maustaste Probleme

Plattformunabhängige GUIs mit wxWidgets.
Antworten
HarryPython
User
Beiträge: 60
Registriert: Freitag 8. Juni 2007, 07:39

Hi.

Ich erzeuge ein rechte Maustaste Event für einen wxTreeCtrl. Das findet man zwar leider nicht unter den Events in wxGlade aber in der wxPython Doku auf www.wxpython.org. Soweit sogut.
Wenn ich nun mit der rechten Maustaste auf ein Tree Element drücke springt die Markierung auf das Element.... wenn ich dann aber die Maustaste wieder los lasse, springt die Markierung auf das zuletzt mit der linken Maustaste gewählte Element zurück. HÄÄÄ?? :shock:

So bekommt man das auch nochmal schriftlich:

Code: Alles auswählen

self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.Tree_DropDown_Button, self.tree_ctrl_1)

def Tree_DropDown_Button(self, event): # wxGlade: MyFrame.<event_handler>
        print self.tree_ctrl_1.GetItemText(self.tree_ctrl_1.GetSelection())
Print gibt immer das Element zurück, dass zuletzt mit der linken Maustaste gewählt wurde. Egal wo ich mit der rechten Maustaste hinklicke.

1. Ist das bei euch auch so?

2. hat jemand dafür eine Lösung?

3. by the way: http://www.wxpython.org/onlinedocs.php hat die beste wx Doku die ich bis jetzt gefunden hab. Leider nicht wirklich vollständig. Kennt jemand eine vollständige?


mfG HP
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

du kannst beim ausgeloesten Event einfach die Markierung setzen...

Code: Alles auswählen

    def on_tree_right_click(self, evt):
        item = evt.GetItem()
        self.tree.SelectItem(item)
        print "Selected", self.tree.GetItemText(item)
...habs jetzt aber nicht nochmal nach Fehlern getestet.

Zu drittens: Die Demo-Docs sind sehr gut, wie ich finde...

wxPython Demo fuer Windows
wxPython Demo fuer Linux
wxPython Demo fuer Mac
...jeweils fuer wx2.8 bzw python2.5
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
HarryPython
User
Beiträge: 60
Registriert: Freitag 8. Juni 2007, 07:39

Hi nkoehring,

da hast mir mal wieder aus der Klemme geholfen. Danke.

Hatte das auch schon mit GetSelection und dann SelectItem versucht aber auf evnt.GetItem() bin ich leider nicht gekommen. Funktioniert wunderbar!!!!!!!!!!!! Danke :D

Hab eben mal die "Alphabetical class reference" von der Demo Hilfe und der Internetseite verglichen und würd sagen wenn man beide zusammenfasst, hätte man was vollständiges.

Die Python Demo mit der hässlichen Schlange ist natürlich der Knaller. :lol:
Hatte ich noch nicht gefunden. Echt Geil!!!


Vielen Dank

bis dann

Gruß HP
Antworten