Konrad-Adenauer-Gymnasium Langenfeld

Informatik Grundkurs Einführungsphase

Mouse-Events

Änderung der Hintergrundfarbe durch Doppelklicken:

Es gibt keine eigenständige Methode zum Reagieren auf Doppelklicks in Java. Allerdings liefert das MouseEvent-Object eine Methode zum Zählen der Zahl der Klicks getClickCount().

Allerdings ist das entsprechende Ereignis, auf das zu reagieren ist, nicht mehr das mousePressed-Ereignis, sondern jetzt das mouseClicked-Ereignis. Erstellen Sie dazu statt der Methode mousePressed in der Klasse MyMouseListener die (zunächst leere) Methode mouseClicked:

public void mouseClicked(MouseEvent event)
{
}

Damit können wir nun die notwendige Ergänzung vornehmen. Allerdings brauchen wir dazu nun ein Struktur, bei der wir in Abhängigkeit von der Zahl der Klicks setBackground entweder mit der Farbe gelb oder weiß aufrufen können.

Das ist die Verzweigung

if (Bedingung)
{
  Anweisungen für den Fall, das die Bedingung wahr ist
}
else
{
  Anweisung für den Fall, das die Bedingung falsch ist
}

Als Bedingung wählen wir, ob die Zahl der Klicks größer als 1 ist:

event.getClickCount()>1

Nun muss nur noch der Aufruf des richtigen Setzens der Hintergrundfarbe in die Verzweigung eingebunden werden:

public void mouseClicked(MouseEvent event)
{
  if (event.getClickCount()>1)
  {
    setBackground(Color.white);
  }
  else
  {
    setBackground(Color.yellow);
  }
  repaint();
}

© Ralph-Erich Hildebrandt, 19. September 2011