Bin mir nicht sicher, ob ich den korrekten Titel für diesen Beitrag gewählt habe. Na ja... erstmal egal.
Hier mein Problem:
Ich habe eine GUI in der ich eine oder mehrere Dateien in einer JList markiere, die Namen per renamerules mittels Regex checke, umbenenne und verschiebe in ein anderes Verzeichnis. Falls es keine renamerule gibt, öffnet sich ein weiteres Dialogfenster wo der Dateiname manuell über JTextfields eingegeben werden kann. Am Ende gibt es noch ein JTextfield, dass den neuen Namen dann darstellt. Jetzt will ich, dass dieser neuer Name aus diesem JTextfield übergeben wird an die Methode der anderen Klasse, die das weitere Dialogfenster gestartet hat. Also nochmal: Ich habe ein Dialogfenster in dem ich arbeite. Wenn etwas nicht passt, dann öffnet sich das zweite Dialogfenster, dass mir den neuen Namen in einem JTextfield ermöglicht. Dann soll dieser Name irgendwie gespeichert werden bzw. übergeben werden und das zuletzt geöffnete Dialogfenster soll geschlossen werden. Und ich arbeite weiter im zuerst geöffneten Dialogfenster.
Das Problem ist, dass dieser neue Name aus dem JTextfield erst nach einem Button-Klick übergeben werden soll. Aber der AcctionListener dafür kann ja kein Rügabewert geben, oder?
Hier ein Auszug vom Code für den Button:
Und hier versuche ich eine Methode zu schreiben, die das neue Dialogfenster öffnet (was auch funktioniert) und daher auch den neuen Dateinamen erhält:
Hier mein Problem:
Ich habe eine GUI in der ich eine oder mehrere Dateien in einer JList markiere, die Namen per renamerules mittels Regex checke, umbenenne und verschiebe in ein anderes Verzeichnis. Falls es keine renamerule gibt, öffnet sich ein weiteres Dialogfenster wo der Dateiname manuell über JTextfields eingegeben werden kann. Am Ende gibt es noch ein JTextfield, dass den neuen Namen dann darstellt. Jetzt will ich, dass dieser neuer Name aus diesem JTextfield übergeben wird an die Methode der anderen Klasse, die das weitere Dialogfenster gestartet hat. Also nochmal: Ich habe ein Dialogfenster in dem ich arbeite. Wenn etwas nicht passt, dann öffnet sich das zweite Dialogfenster, dass mir den neuen Namen in einem JTextfield ermöglicht. Dann soll dieser Name irgendwie gespeichert werden bzw. übergeben werden und das zuletzt geöffnete Dialogfenster soll geschlossen werden. Und ich arbeite weiter im zuerst geöffneten Dialogfenster.
Das Problem ist, dass dieser neue Name aus dem JTextfield erst nach einem Button-Klick übergeben werden soll. Aber der AcctionListener dafür kann ja kein Rügabewert geben, oder?
Hier ein Auszug vom Code für den Button:
Java:
JButton btnUmbenennen = new JButton("Umbenennen");
btnUmbenennen.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
getDateinameNeu();
System.out.println(getDateinameNeu());
dispose();
}
});
Und hier versuche ich eine Methode zu schreiben, die das neue Dialogfenster öffnet (was auch funktioniert) und daher auch den neuen Dateinamen erhält:
Java:
public String manUmbenennen(String dateiname)
{
DateiManuellUmbenennen start = new DateiManuellUmbenennen(dateiname);
start.setVisible(true);
String dateinameNeu = ...;
return dateinameNeu;
}