hab gerade mit der Oberflächenprogrammierung angefangen und wunder mich ueber einen punkt. folgendes beispiel: ich habe ein frame und moechte es gerne auf dem button x beenden. der Code ist:
wenn ich jetzt das programm starten würde und auf x klicken würde, würde ja ein Objekt vom Java System erzeugt werden, der ein WindowEvent representiert. das wird dann an das listener Objekt weitergegeben. woher weißt das listener objekt denn jetzt, welche methode es auszuführen hat?
edit: ach und eine letzte Frage habe ich noch : es soll ein Graphics Objekt geben, der den Bereich darstellt, worauf gemalt werden kann und dieses Objekt würde von selbst hinzugefügt werden. was mich wundert, da die klasse doch abstrakt ist ? ?
vielen dank
Java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class WindowQuitter extends WindowAdapter
{
public void windowClosing( WindowEvent e )
{
System.exit( 0 ); // what to do for this event
}
}
public class GUItester
{
public static void main ( String[] args )
{
JFrame frm = new JFrame(); // construct a myFrame object
WindowQuitter wquit // construct a listener
= new WindowQuitter(); // for the frame
frm.addWindowListener( wquit ); // register the listener
frm.setSize( 150, 100 );
frm.setVisible( true );
}
}
wenn ich jetzt das programm starten würde und auf x klicken würde, würde ja ein Objekt vom Java System erzeugt werden, der ein WindowEvent representiert. das wird dann an das listener Objekt weitergegeben. woher weißt das listener objekt denn jetzt, welche methode es auszuführen hat?
edit: ach und eine letzte Frage habe ich noch : es soll ein Graphics Objekt geben, der den Bereich darstellt, worauf gemalt werden kann und dieses Objekt würde von selbst hinzugefügt werden. was mich wundert, da die klasse doch abstrakt ist ? ?
vielen dank
Zuletzt bearbeitet: