GEM-Programmierung: die Maus

Die Verwendung beider Maustasten

Die Programmierung der rechten Maustaste ist schwach dokumentiert. Hier ein Beispiel anhand der Funktion evnt_button. Natürlich ist das auch analog mit event_multi möglich. vgl.(1).

Die Funktion wird so aufgerufen:

Return = evnt_button(Klicks, Maske, Status, &Xpos, &YPos, &Knopf, &Status);

Dabei bedeuten die Parameter:
Klicks Die Anzahl der maximal zu registrierenden Klicks (zwei für Doppelklick)
Maske Welche Taste wird erkannt. Bit 0 für linke, Bit 1 für rechte Maustaste
Status Welcher Zustand wird erkannt. 0 nicht gedrückt, 1 für gedrückt

Im High-Byte von Klicks kann eine Negation eingegeben werden. Um beide Tasten abzuhorchen, sind die Parameter:

Klicks 256+Anzahl Klicks
Maske 3
Status 0 für beide Tasten losgelassen

Es ergibt sich daraus die Semantik: Die linke und die rechte Taste nicht losgelassen.

In Knopf findet man nun eine 1 für linke Taste und eine 2 für rechte Taste


Computer-Oldies - Atari ST Programmierung - Informatik-Ecke (C) Copyright 1999 Arnold Willemer