Ich möchte benachrichtigt werden, wenn ein Benutzer die gesamte Zeile in einem wxGrid auswählt, aber ich sehe kein Ereignis, das dies behandelt. Wie kann ich das am besten machen?
Antworten
Zu viele Anzeigen?
tom10
Punkte
63374
Sie können dies mit EVT_GRID_RANGE_SELECT
tun und dann überprüfen, ob der Bereich eine einzelne Zeile ist, wenn der Handler aufgerufen wird.
Zum Beispiel setzen Sie in der GridSimple.py wxPython-Demo die Zeile in SimpleGrid.__init__
self.Bind(gridlib.EVT_GRID_RANGE_SELECT, self.OnSelectRange)
Und fügen Sie dann hinzu, um zu sehen, welche Zellen ausgewählt wurden.
def OnSelectRange(self, evt):
print "on select range", evt.GetTopLeftCoords(), evt.GetBottomRightCoords()
Daraus können Sie bestimmen, ob die Auswahl eine ist, die Sie interessiert.
Nicht registrierter Benutzer
Punkte
0