Kapitel 18
Event-Verarbeitung
526
18.2 Event-Sequenzen
Eine Event-Sequenz ist ein String, der einen einzelnen Event oder eine Kombination von
zusammengehörigen Events spezifiziert. Er besteht aus einem oder mehreren Event-Pattern,
die jeweils einen einzelnen elementaren Event beschreiben. In der Praxis enthalten Event-
Sequenzen meist nur ein einziges Event-Pattern. Ein Event-Pattern ist allgemein nach fol-
gendem Format aufgebaut:
18.2.1 Event-Typen
Das gesamte Event-Pattern ist in spitzen Klammern eingeschlossen. Es muss auf jeden Fall
eine Typbezeichnung enthalten, die die Art des Ereignisses, z.B. Mausklick oder Tastenbe-
tätigung beschreibt (Tabelle 18.2). Eine gültige Event-Sequenz, die nur aus einer Typbezeich-
nung besteht, ist z.B.
<Enter>. Dieser Event tritt ein, wenn der Mauszeiger in einen
sichtbaren Bereich des Widgets gezogen wird.
18.2.2 Qualifizierer für Maus- und Tastatur-Events
Manche Event-Beschreibungen benötigen zusätzlich einen Qualifizierer. Bei Maus-Events
(Typ:
Button oder ButtonRelease) gibt der Qualifizierer an, welche Maustaste gedrückt
oder losgelassen worden ist: Die Zahlen
1, 2 und 3 stehen für die linke, mittlere und rechte
Maustaste. Die Event-Sequenz
beschreibt demnach einen Event, der eintritt, wenn die rechte Maustaste gedrückt worden ist.
<[Modifizierer-] Typ [-Qualifizierer]>
Event-Typ Erklärung
Activate
Ein Widget wechselt in den Zustand »aktiv«.
Button
Ein Maus-Button ist gedrückt worden.
ButtonRelease
Maus-Knopf wurde losgelassen.
Configure
Die Größe eines Widgets (z.B. ein Fenster) wurde vom Benutzer geändert.
Enter
Der Benutzer bewegt den Maus-Cursor in einen sichtbaren Teil des Widgets.
Expose
Ein zuvor vollständig verdecktes Widget wird wenigstens an einer Stelle
sichtbar.
KeyPress
Eine Taste wurde gedrückt.
KeyRelease
Taste wird losgelassen.
Leave
Der Maus-Cursor wird aus einem Widget herausgezogen.
Motion
Der Maus-Zeiger wurde (vollständig) innerhalb des Widgets bewegt.
Visibility
Wenigstens ein Teil des Applikationsfensters wird auf dem Bildschirm
sichtbar.
Tabelle 18.2: Die wichtigsten Event-Typen
<Button-3>
527
18.2
Event-Sequenzen
Bei Tastatur-Events gibt der Qualifizierer an, welche Taste gedrückt worden ist. Für eine Taste
gibt es unterschiedliche Bezeichnungen:
Das Tastensymbol (keysym) ist ein String, der die Taste beschreibt. Bei Tasten, die alpha-
numerische Zeichen repräsentieren, wird einfach dieses Zeichen genommen (z.B.
a für
die Taste mit dem Buchstaben
a). Dabei wird zwischen Groß- und Kleinschreibung
unterschieden. So tritt der Event
<KeyPress-A> genau dann ein, wenn die Tastenkom-
bination
(Shift)+(a) betätigt worden ist.
Die Tastensymbol-Nummer (keysym_num) ist eine ganze Zahl, die der Taste zugeordnet
ist.
Beispiel: Der Event mit der Sequenz
<KeyPress-Delete> oder <KeyPress-65535> tritt ein,
wenn
(Entf) gedrückt worden ist.
Bei den häufig vorkommenden Tastatur- und Maus-Events kann die Typbezeichnung weg-
gelassen werden. Beispiele:
r <KeyPress-a> schreibt man einfach a (ohne spitze Klammern).
r <Button-1> lautet die Kurzform <1>.
keysym keysym_num Taste
BackSpace 65288
(Leertaste)
Control_L 65507
Linke (Strg)-Taste
Delete 65535
(Entf)
Down 65364
(Pfeil¼)
End 65367
(Ende)
Escape 65307
(Esc)
F1 65470
(F1)
F2 65471
(F2) (usw.)
Home 65360
(Pos1)
Insert 65379
(Einfg)
Left 65361
(Pfeilæ)
Next 65366
(Bild¼)
Prior 65365
(Bild½)
Return 65293
(Enter)
Right 65363
(PfeilÆ)
space 32
(Leertaste)
Up 65362
(Pfeil½)
Tabelle 18.3: Einige Tastensymbole und ihre Nummern

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.