' Ereignisse Maus & Tastatur #Include "fbgfx.bi" ' nur für älteres FBC-Versionen #Ifndef TRUE #Define TRUE -1 #EndIf #Ifndef FALSE #Define FALSE 0 #EndIf Function MultiAsc (t As String) As String Dim h As String, i As Integer h = "" For i = 1 To Len(t) h = h + IIf(i = 1, "(", ",") + Str(Asc(Mid(t, i, 1))) Next i MultiAsc = h + ")" End Function ScreenRes 640, 480 Width 80, 30 Dim e As fb.EVENT, bDrin As Integer, t As String, bEreignisErh As Integer bDrin = TRUE bEreignisErh = FALSE While bDrin t = InKey If t <> "" Then Color 15 Print "Taste " + MultiAsc(t) + " entgegengenommen" EndIf If ScreenEvent(@e) Then bEreignisErh = TRUE Select Case e.type Case fb.EVENT_KEY_PRESS Color 11 Print "Taste " + Str(e.scancode) + " (ASCII=" + Str(e.ascii) + !" gedr\129ckt" Case fb.EVENT_KEY_RELEASE Color 3 Print "Taste " + Str(e.scancode) + " (ASCII=" + Str(e.ascii) + " losgelassen" If e.ascii = Asc("x") Then bDrin = 0 EndIf Case fb.EVENT_KEY_REPEAT Color 1 Print "Taste " + Str(e.scancode) + " (ASCII=" + Str(e.ascii) + !" ist immer noch gedr\129ckt!" Case fb.EVENT_MOUSE_MOVE Color 4 Print "Maus bewegt nach x=" + Str(e.x) + " y=" + Str(e.y) + " (" + Str(e.dx) + "," + Str(e.dy) + ")" Case fb.EVENT_MOUSE_BUTTON_PRESS Color 13 Print !"Maustaste gedr\129ckt: " + Str(e.button) Case fb.EVENT_MOUSE_BUTTON_RELEASE Color 5 Print "Maustaste losgelassen: " + Str(e.button) Case fb.EVENT_MOUSE_DOUBLE_CLICK Color 9 Print "Maustaste doppeltgeklickt: " + Str(e.button) Case fb.EVENT_MOUSE_WHEEL Color 15 Print "Mausrad gedreht: z=" + Str(e.z) Case fb.EVENT_MOUSE_ENTER Color 10 Print "Maus ins Fenster hineinbewegt" Case fb.EVENT_MOUSE_EXIT Color 2 Print "Maus aus dem Fenster herausbewegt" Case fb.EVENT_WINDOW_GOT_FOCUS Color 14 Print "Fenster in den Eingabevordergrund (Fokus) gebracht" Case fb.EVENT_WINDOW_LOST_FOCUS Color 6 Print "Fenster in den Eingabehintergrund (Fokusverlust) gebracht" Case fb.EVENT_WINDOW_CLOSE Color 14 Print !"Schliessymbol bet\132tigt" Case fb.EVENT_MOUSE_HWHEEL Color 7 Print !"Horizontalmausrad (nicht \129berall vorhanden) gedreht: " + Str(e.w) Case Else Color 12 Print "Unbekanntes Ereignis: " + Str(e.type) End Select Else If bEreignisErh Then Color 8 Print "Nichts zu tun!" bEreignisErh = FALSE EndIf Sleep 100 EndIf Wend