Visuelle Entwicklung von GUIs mit SWT Designer
Überblick
Instantiations SWT Designer erweitert den Quelltexteditor von SWT-Klassen um einen visuellen GUI-Editor:
Über die Palette können Widgets erzeugt und Layouts zugewiesen werden:
GridLayouts bearbeiten
Wenn Sie in einem GridLayout neue Controls einfügen, wird an der gelb markierten Stelle eine neue Tabellenzeile für das Element angelegt:
Einige Eigenschaften des GridLayouts können direkt im GUI über Handles manipuliert werden, weitere Optionen sind über das Kontextmenü und die Eigenschaften-Palette zu erreichen:
FormLayouts bearbeiten
SWT Designer stellt mit Handles an jeder Kante des Controls dar, woran diese Kante des Controls ausgerichtet wird und erlaubt die Bearbeitung dieser Eigenschaften:
Bewegen Sie ein Control, zeigen die grün markierten Kanten an welcher naheliegenden Kante ausgerichtet wird bzw. welche Kanten durch die Verschiebung fixiert werden:
Code-Generierung
SWT Designer erzeugt und arbeitet direkt mit dem Java-Quelltext. So können auch bereits vorhandene Benutzeroberflächen geöffnet und bearbeitet werden. Der erzeugte Code kann relativ frei bearbeitet werden. Dies funktioniert zwar robust, kann jedoch nicht mit dynamischem GUI-Code umgehen. Beispielsweise können Widgets, die in einer Schleife oder in einem If-Block erzeugt werden, nicht angezeigt werden, da die dazu notwendigen Informationen erst zur Laufzeit zur Verfügung stehen. Einige Hinweise auf Konstrukte, die nicht verwendet werden dürfen, finden Sie unter Bi-directional Code Generation. Solche Maskenteile sollten in separate Klassen ausgelagert werden, die dann lediglich in die mit dem SWT Designer erstellten Masken eingebunden werden.
Einbetten von Composites
Über Choose Composite in der Palette können beliebige Composite-Klassen importiert werden, die dann als Custom Control zur Verfügung stehen:
Events erzeugen
Event-Listener können über die Events-Palette oder über das Kontext-Menü angelegt werden. SWT Designer erzeugt dann automatisch Listener-Code, der nur noch zu implementieren ist:



Hallo Ralf,
vielleicht solltest Du auch noch kurz http://www.cloudgarden.com/jigloo/index.html erwähnen. Kennst Du weitere brauchbare Designer?
Gruß Dirk