PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OOP-Desing mit SWING wie möglich?



Lin728
27-08-2002, 22:23
Doch gibt es jetzt Anwendungsfälle, wo ich z.B. aus dem Menü heraus ein Fenster mit dispose() freigeben möchte.
So gesehen, müsste ich eigentlich alle Widgets in die Klasse des Hauptfensters packen, um auch zugriff daraf zu haben. Das würde aber in Klassen mit mehreren Tausend zeilen Code enden, wäre nicht garde im OOP-Sinn...

Mfg

peschmae
28-08-2002, 12:21
laut thinking in java hat eine innerclass eine referenz auf das elternobjekt

(kapitel 13 "The Swing event model")

hab jetzt keine zeit, das genau zu untersuchen, die schule beginnt

gleeeeich

MfG Peschmä

peschmae
29-08-2002, 10:56
Das hier funktioniert (zurgiff von inner class auf umgebende klasse):

public class ceissexample {
ceissexample() {
System.out.println("Createeeee ceissexample");
new btn();
}

public void grins() {
System.out.println("grins");
}

public static void main(String[] args) {
new ceissexample();
}


class btn {
btn() {
System.out.println("Createeeee btn");
grins();
}
}

}


d.h. du kannst von einer inner class ohne zusätzliches keyword auf die
umgebende Klasse zugreifen (auch private variablen!).

Falls du aber die Toolbar & Co nicht als inner class realisiert, ist ein
dispose() afaik nicht, d.h. nur mit einer "irgendwie global gemachten"
Referenz möglich.

MfG Peschmä