H
Heinz Schenker
Gast
Ich glaube ich habe jetzt was grundlegendes kapiert.
In einer großen SWing-Anwendung, schaffe ich es Option und About-Fenster wunderschön über eigene Classen abgeleteitet von JDIALOG auszulagern.
Jetzt möchte ich das gleich mit einem JFILECHOOSER tun. Es klappt auch, indem ich die Routine, die ausgeführt wird in eine eigene Klasse ausgelagert habe, die vom JFILECHOOSER erbt.
Der Code ist noch "experimental", aber meine wichtige Frage: Wie transferiere ich den Dateinamen, zurück in die "Hauptclasse". Dort steht ja grade im ActionListener, der den Button überwacht.
Irgendwie muß das "new LadenWindow()" was zurückgeben, aber wie mach ich das nur...
Ich weiß, daß geht irgendwie TOTAL geschickt und stimmig...
In einer großen SWing-Anwendung, schaffe ich es Option und About-Fenster wunderschön über eigene Classen abgeleteitet von JDIALOG auszulagern.
Jetzt möchte ich das gleich mit einem JFILECHOOSER tun. Es klappt auch, indem ich die Routine, die ausgeführt wird in eine eigene Klasse ausgelagert habe, die vom JFILECHOOSER erbt.
Code:
import java.io.File;
import javax.swing.JFileChooser;
public class LadenWindow extends JFileChooser
{
LadenWindow()
{
// this.setCurrentDirectory(new File("/Applications/ImageJ/plugins/MosaikRessources/"));
this.setFileFilter(new JPGFilter());
int zustand = this.showOpenDialog(null);
if (zustand == JFileChooser.APPROVE_OPTION)
{
System.out.println( this.getAcceptAllFileFilter());
File[] files = this.getSelectedFiles();
File d = this.getCurrentDirectory();
System.out.println(files.length);
for (int i = 0; i < files.length; i++)
{
System.out.println(files[i] );
}
System.out.println(d);
}
}
}
Der Code ist noch "experimental", aber meine wichtige Frage: Wie transferiere ich den Dateinamen, zurück in die "Hauptclasse". Dort steht ja grade im ActionListener, der den Button überwacht.
Code:
public void actionPerformed(ActionEvent e)
{
String auswahl = e.getActionCommand();
System.out.println(auswahl);
if (auswahl =="Laden")
{
new LadenWindow();
}
}
Irgendwie muß das "new LadenWindow()" was zurückgeben, aber wie mach ich das nur...
Ich weiß, daß geht irgendwie TOTAL geschickt und stimmig...