Lehrer Nussbaumer - JAVA (eine kleine Einführung ;) |
---|
GrundlagenGUIEingabeAusgabeApplikationen
AppletsServletsBeispieleSpieleIDEsSkriptumJAVA-DOCS----------------- letzte Änderung: 09 December 2021 ----------------- Lehrer Nussbaumers Seite ... in Arbeit ... |
InteraktionInteraktionen werden über sogenannte "Interfaces" realisiert.
Für jedes Event-Listener-Interface gibt es sogenannte Adapterklassen, mit denen in inneren Klassen die Methoden überschreiben kann, die man für seine Anwendung benötigt (z.Bsp. WindowAdapter, MouseAdapter, MouseMotionAdapter). Das Implementieren der entsprechenden Interfaces in der Kopfzeile der Klassendefinition entfällt dabei... Beispiel:In einer einfachen Java-Applikation sollen zwei Buttons verschiedenen Text auf einem Label ausgeben. Beachte das sehr einfache Layout ("FlowLayout")! Code:import java.awt.*; import java.awt.event.*; public class interakt extends Frame implements ActionListener { Button bein,baus; Label lab; interakt() { super("Programm mit Buttons ;-)"); FlowLayout ansicht = new FlowLayout(); setLayout(ansicht); bein = new Button("ein"); add(bein); baus = new Button("aus"); add(baus); lab = new Label("???"); add(lab); bein.addActionListener(this); baus.addActionListener(this); } void ein() { lab.setText("ein"); } void aus() { lab.setText("aus"); } public void actionPerformed(ActionEvent e) { if (e.getSource() == bein) ein(); else if (e.getSource() == baus) aus(); } public static void main (String[] arguments) { interakt proggi = new interakt(); WindowListener wl = new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }; proggi.addWindowListener(wl); proggi.setSize(300,100); proggi.show(); } } Kommentar:bein.addActionListener(this); Das Interface muss zu jedem Objekt, das Ereignisse auslösen soll, verknüpft werden. public void actionPerformed(ActionEvent e) - Die Methode actionPerformed() wird so überschrieben, dass die Applikation gewünschte Interaktionen auslöst. Im Allgemeinen werden damit eigene Methoden aufgerufen...
Schreibe eine kleine Applikation, die "auf Knopfdruck" verschiedene Schulnoten vergibt ;-). |