Arbeit mit Swing und TGASwingUtil

Die Arbeit mit Java Swing setzt voraus, dass Manipulationen an Swing-Objekten stets nur auf einem einzigen Thread, dem Event Dispatch Thread (EDT), durchgeführt werden. Um dies zu unterstützen bietet Java die Klasse SwingUtilities an. Sie enthält verschiedene Methoden, mit deren Hilfe die Ausführung von Code auf den EDT verlagert werden kann. Zu Problemen kann es jedoch in solchen Umgebungen kommen, in denen mehr als ein EDT vorhanden ist.[52]

Um auch in solchen Anwendungsfällen sicherzustellen, dass zur Ausführung der korrekte EDT verwendet wird, existiert in jadice die Klasse TGASwingUtil. Sie bietet verschiedene Methodenaufrufe, die jene in SwingUtilities durch eine angepasste Variante ersetzen. Wir empfehlen zur Bearbeitung von Swing Komponenten konsequent die Klasse TGASwingUtil zu nutzen. In Umgebungen mit mehr als einem Event Dispatch Thread ist die konsequente Verwendung von TGASwingUtil zwingend notwendig um die korrekte Lauffähigkeit zu gewährleisten.



[52] Dazu zählen im Besonderen Applets und WebStart.

[jadice document platform Version 5.5.12.1: Dokumentation für Entwickler. Veröffentlicht: 2021-08-17]