Seite 1 von 1

wxPython Bug EVT_LEFT_UP

Verfasst: Dienstag 27. April 2010, 20:28
von Sr4l
Ich musste gerade folgendes feststellen:

Test Code: http://paste.pocoo.org/show/206801/

Wenn ich den gezeigten Code oben unter Windows 7 32bit mit Python 2.6.4
und wxPython 2.8.10.1 laufen lasse passiert beim linke Maustaste loslassen
nichts. Jedoch wird bei einem Doppelklick die Funktion `OnListCtrlLeftUp`
ausgelöst. EVT_LEFT_DCLICK und EVT_LEFT_DOWN funktionieren wie erwartet.

Unter Linux (Ubuntu 9.10) 32bit mit Python 2.6.4 und wxPython 2.6.3.2 und
2.8.10.1 funktioniert der Code wie erwartet.

Kann den Fehler jmd für Windows bestätigen?

Verfasst: Dienstag 27. April 2010, 21:14
von fhoech
Ja, kann ich bestätigen. Mein Windows 7 ist zwar die 64-Bit-Fassung, und ich verwende Python 2.6.5 (32-Bit), aber wxPython ist wie bei Dir 2.8.10.1. Auch interessant: Wenn ich dann in Deinem Codebeispiel zusätzlich EVT_LEFT_DOWN an einen eigenen Eventhandler binde, funktioniert auch EVT_LEFT_UP, allerdings lassen sich im ListCtrl keine Zeilen mehr auswählen. Füge ich dann im Eventhandler für EVT_LEFT_DOWN ein event.Skip() hinzu, lassen sich wieder Zeilen auswählen, der Eventhandler wird auch aufgerufen, aber dafür funktioniert EVT_LEFT_UP nicht mehr.

Verfasst: Mittwoch 28. April 2010, 14:53
von Damaskus
In Verbindung mit EVT_LEFT_DOWN funktioniert EVT_LEFT_UP.
Zumindest bei mir mit wxPython 2.8.10 / Python 2.6 WinXP(32bit) und Vista(64bit).

Ohne EVT_LEFT_DOWN kommt bei mir EVT_LEFT_UP nur mit einem Doppelklick.

Gruß
Damaskus