Dialog von "Außen" schließen

Flo<H>

Erfahrenes Mitglied
Hallo!
Ich arbeite gerade gerade an einem Programm zum Organisieren von Mp3s. Dieses liest ein Verzeichnis rekursiv ein und zeigt anschließend die Dateien in einer JTable an. Soweit funktioniert es jetzt, nur will ich jetzt dass während dem Auslesen ein Dialog mit ProgressBar angezeigt wird, bei dem man das Einlesen auch Abbrechen kann. Dieser Dialog soll aber auch automatisch geschlossen werden, sobald das Programm mit dem Einlesen fertig ist. Und hier hab ich mein Problem.

Hier erstmal mein derzeitiger Ansatz:

runReader() wird bei Start des Programms und beim Ordnerwechsel aufgerufen und sorgt dafür, dass Neueingelesen wird:
Java:
public void runReader()
{
     // Dialog öffnen 
     CustomProgressBar customProgressBar = new CustomProgressBar(this);
     Thread progressBar = new Thread(customProgressBar);
     progressBar.start();
	
     reader.update();
	
     // Einlesen starten 
     Thread thread = new Thread(reader);
     thread.start();
}

CustomProgressBar.run(), ansonsten steht noch nichts in der Klasse. Wollte anschließend noch die ProgressBar einbauen und Methoden um diese upzudaten:
Java:
public void run()
{
     JOptionPane.showOptionDialog(main, "Progressbar", "Progress", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, null, null);
}

Bis jetzt funktioniert, dass sich der Dialog öffnet, sobald Neueingelesen wird. Nur schließt sich der Dialog nicht automatisch, wenn Das Einlesen fertig ist. Bin über jede Hilfe oder Denkanstoß dankbar :)

mfg flo
 
Zuletzt bearbeitet von einem Moderator:
Zurück