Verhindern das ein KeyEvent weiter kommt

Plattformunabhängige GUIs mit wxWidgets.
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Verhindern das ein KeyEvent weiter kommt

Beitragvon nkoehring » Dienstag 15. Januar 2008, 18:08

Hallo,

ich moechte, dass ein Editor zweiteilige Shortcuts haben kann, also zB Strg+X und dann F fuer irgendeine Funktion. Das zu realisieren ist kein Problem, nur an einer Stelle haperts: Das f wird in das Textfeld geschrieben und ich weiß nicht, wie ich es abfangen kann.

Ich glaube schonmal was darueber hier gelesen zu haben, aber ich konnte es nicht finden.

Bisher versuchte ich es mit evt.Skip() und evt.StopPropagation(). Das half alles nix.

Weiß jemand Abhilfe?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Re: Verhindern das ein KeyEvent weiter kommt

Beitragvon gerold » Dienstag 15. Januar 2008, 19:51

nkoehring hat geschrieben:Das f wird in das Textfeld geschrieben und ich weiß nicht, wie ich es abfangen kann.

Hallo nkoehring!

Code: Alles auswählen

        txt = wx.TextCtrl(panel)
        txt.Bind(wx.EVT_KEY_DOWN, self.on_text)
   
   
    def on_text(self, event):
        if not event.UnicodeKey == 70:
            # Wenn nicht "F"
            event.Skip()

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Beitragvon nkoehring » Mittwoch 16. Januar 2008, 12:00

Ah... so rum... also *nicht* skippen, damit es nicht geschrieben wird. Danke ;)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder