Tastatur und Mausabfrage: Events mit Pygame für Python


Die Abfrage der Tastatur und der Maus ermöglicht uns, den Nutzer aktiv in Nutzung des Programmes einzubeziehen.
Durch im Programm festzulegende Reaktionen, kann der Nutzer selbst Aktionen im Grafikfenster auslösen..

  1. Lernen wir aus den vorherigen Programmen, wie ein mit Pygame erzeugtes Grafikfenster geschlossen werden kann.
    
      
    Hier einige Beispiele für die Daten eines Events.
    <Event(1024-MouseMotion {'pos': (71, 140), 'rel': (-1, 0), 'buttons': (0, 0, 0), 'window': None})>
    <Event(768-KeyDown {'unicode': 'a', 'key': 97, 'mod': 4096, 'scancode': 4, 'window': None})> 
    <Event(771-TextInput {'text': 'a', 'window': None})> 
    <Event(769-KeyUp {'unicode': 'a', 'key': 97, 'mod': 4096, 'scancode': 4, 'window': None})> 
    <Event(32768-ActiveEvent {'gain': 0, 'state': 0})> 
    <Event(32784-WindowLeave {'window': None})> 
    <Event(32777-WindowMoved {'x': 1078, 'y': 237, 'window': None})> 
    <Event(32770-VideoExpose {})> 
    <Event(32787-WindowClose {'window': None})> 
    <Event(256-Quit {})> 
  2. Nun werden weitere Evenst festgestellt und ausgewertet.
    
      
    Weitere Informationen zu Events, den Funktionen und Konstanten findest du nachfolgend: Füge eine weitere Reaktion auf eine bestimmte Taste hinzu.
  3. Den Tastatur- und Mausereignissen können auch Grafikaktion zugeordnet werden.
    
      
    Bei jeder Mausbewegung wird an der aktuellen Mausposition ein Kreislinie in einer zufälligen roten Farbe gezeichnet.
    1. Auch grün und blau sollen per Zufall verändert werden.
    2. Mache auch den Radius vom Zufall abhängig.
  4. Auf dem Bildschim wird ein Gitter gezeichnet.
    Bei jedem Mausklick mit der linken Maustaste wird im aktuellen Gitterfeld ein schwarze Kreislinie gezeichnet.
    
      
    1. Mit Rechtsklick soll im Gitterfeld eine Kreislinie in der Hintergrundfarbe gezeichnet werden.
    2. Ändere das Programm, anstelle des Kreises soll in das Gitterfeld ein Quadrat gezeichnet werden.
    3. Über die Tastaur kann bestimmt werden, ob Kreise oder Quadrate in das Gitterfeld gezeichnet werden.
  5. In der vorherigen Aufgabe konntest du versuchen, dein Programm wahlweise Kreise oder Rechtecke per Mausklick zeichnen zu lassen.
    Per Tastatur sollte bestimmt werden, welche Grafikobjekte in ein Gitterfeld zu zeichnen sind.
    Hier nun eine mögliche Lösung und weitere Aufgaben zu diesem Programm.
    
      
    1. Mit der Leertaste soll das Zeichnen per Mausklick ausgeschalten werden.
    2. Durch Drücken der Taste x soll ein Kreuz in das ausgewählte Gitterfeld gezeichnet werden.
    3. Vor dem Zeichnen einer der drei Figuren soll das Gitterfeld automatisch "gelöscht" werden.