Zunächst wird eine Klasse erstellt, die in diesem Falle lediglich einen Button zum Aufruf der Threadklasse in einem JFrame bereitstellt. Sie wird in der main()-Methode aufgerufen.
Die zweite Klasse stellt eine Instanz eines
JProgressMonitor bereit, der den Fortschritt eines rechenintensiven Prozesses anzeigt. Sie muss die Klasse
Thread erweitern.
Die Mehode
machDochWas() stellt den Kern des Programmes dar. In ihr wird innerhalb einer
while-Schleife eine Zählvariable von 0 bis 100 hochgezählt. Bei jedem Durchgang geschieht dreierlei:
- dem ProgressMonitor wird der Wert der Zählvariablen als String gecastet zur numerischen Darstellung übergeben.
- die statische Methode invokeLater() der Klasse SwingUtilities erhält als Parameter eine Instanz der Klasse Runnable, deren Methode run() überschrieben wird, indem in dieser der neue Wert des ProgressMonitors mit Hilfe dessen Methode setProgress() gesetzt wird. Dies bewirkt den Fortschritt des Laufbalkens.
- durch die statische Methode Thread.sleep() wird anschließend der Schleifendurchlauf für 100 Millisekunden unterbrochen, um den rechenintensiven Prozess zu simulieren.