SWT Dynamische GUI (Layoutmanager?)

Bernd Hohmann

Top Contributor
Ich bau hier gerade an einer SWT-Erfassungsmaske für Bilddaten. In der Maske (siehe Anhang) kann man über die Liste links zwischen 9 verschiedenen Templates umschalten und entsprechend Daten erfasssen.

Ein paar der Elemente sind fix (zb. Liste links, Dateiauswahl oben, Buttons und Text unten) der Rest aus der oben definierten Template-Datei.

Genutzt wird zzt. das GridLayout, was aber das Problem hat dass man Controls nicht einfach austauschen kann (es geht schon, aber nur Mühsam). Ich hab schon überlegt über eine Tabelle zu arbeiten, aber da hab ich mich noch nicht eingearbeitet und mit dem CellRenderer scheint das mächtig Zirkus zu sein.

Was tun? Gibt es einen Layoutmanager ähnlich Gridlayout wo man Controls rausschmeissen bzw, neu setzen kann oder hat jemand eine hübsche Lösung für sowas in der Schublade? SWT Standard wäre natürlich am besten.

Bernd
 

Anhänge

  • Bildschirmfoto.png
    Bildschirmfoto.png
    19,3 KB · Aufrufe: 35
Ich habe jetzt eine tragfähige, einfache Lösung gefunden: der dynamische Teil ist in eine eigene Component ausgelagert worden, die kann ohne Nebenwirkungen geleert werden:

Java:
		// remove old content
		for (Control ctl : cmpContent.getChildren()) {
			ctl.dispose();
		}

Dann wird der Kram wieder befüllt. Bisserl lästig ist, dass man jeweils nach dem löschen und einfügen via .layout() und .pack() die Sache auf Vordermann bringen muss - aber damit kann ich Schlussendlich leben.

Bernd
 

Zurück
Oben