SWT GridLayout

Status
Nicht offen für weitere Antworten.

ich_wills_wissen

Bekanntes Mitglied
hallo zusammen !

Habe gerade ein kleines Layout-problem:

Ich habe ich meiner Anzeige zwei Composites mit Inhalt.
Das untere (sie sind untereinander angeordnet) der beiden bekommt aber
einen dynamischen Inhalt (mehrere Listen-objekte, in welche Text eingetragen wird).
Die beiden Composites nehmen sich normalerweise (wenn die Listen nur ganz wenig Text enthalten)
so viel Platz wie es geht (GridData.FILL_BOTH) OHNE sich dabei aber zu überschneiden.

Wenn jetzt aber eine oder mehrere der Listen viel Text enthält dehnt sie sich zu sehr in die Länge und das
untere Composite überschneidet das obere Composite (zum teil sogar so stark, daß man nurnoch
einen Teil von dem unteren Composite und dessen Inhalt sieht).
Alles was ich will ist, daß die Listen ab einer bestimmten Größe aufhören sich zu vergrößern und
dass dann stattdessen Scrollbars eingeblendet werden.. Wie kriege ich das hin ?

Ich vermute mal irgendwie über die GridData Objekte der Listen.. das Problem ist
halt, daß die Listen nach Möglichkeit alle gleich groß sein sollen..

Weiß jemand Rat ? ???:L

grübeln,

ich_wills_wissen :###
 

byte

Top Contributor
ich_wills_wissen hat gesagt.:
das Problem ist halt, daß die Listen nach Möglichkeit alle gleich groß sein sollen..

Heisst das, Du möchtest erreichen, dass beide Listen 50% der Höhe bekommen, unabhängig von ihrem Inhalt? Dann würde ich ein FormLayout empfehlen, damit kannst Du sehr komfortabel mit Prozentwerten arbeiten.

Also z.b. so:

Code:
FormData data = new FormData();
data.left = new FormAttachment(0, 0);
data.right = new FormAttachment(100, 0);
data.top = new FormAttachment(0, 0);
data.bottom = new FormAttachment(list2, -5);
list1.setLayoutData(data);

data = new FormData();
data.left = new FormAttachment(0, 0);
data.right = new FormAttachment(100, 0);
data.top = new FormAttachment(list1, 5);
data.bottom = new FormAttachment(100, 0);
list1.setLayoutData(data);
 

ich_wills_wissen

Bekanntes Mitglied
Ich komm damit irgendwie nicht klar..

ich habe ein Composite (das obere, enthält Steuerelemente) von dem ich möchte, daß es
5% Rand nach rechts und 5% Rand nach links lässt. Den Rest des Platzes soll das Composite
für sich benutzen (90% also der gesamten Breite).
Mit der Höhenangabe habe ich keine Probleme, aber das mit dem mittig ausrichten
bekomme ich nicht gebacken..

Understanding SWT Layouts (Eclipse.org) hilft mir da leider auchnet weiter...
:bahnhof: :(

Kann mir das bitte jemand erklären bzw mir sagen was ich eingeben
muss, damit sich das Composite mittig ausrichtet ?


Danke nochmal und Gruß,

ich_wills_wissen :###
 

byte

Top Contributor
Code:
Composite comp = ...
comp.setLayout(new FormLayout());

FormData data = new FormData();
data.left = new FormAttachment(5, 0);
data.right = new FormAttachment(95, 0);
data.top = new FormAttachment(0, 0);
data.bottom = new FormAttachment(100, 0);
comp.setLayoutData(data);

So hat comp eine Breite von 90% der Gesamtbreite mit einem Rand rechts und links von jeweils 5%. Ist es das, was Du wolltest?
 

ich_wills_wissen

Bekanntes Mitglied
Hallo byto,

vielen Dank, genau sowas habe ich gesucht :)
Ich habe den "Fehler" gemacht und mit den Offset werten rumgespielt,
habe aber mittlerweile soviel herausgefunden, als daß die Offset-werte nur
in Pixel angegeben werden und nicht in Prozent relativ zur Größe
des auszurichtenden Objektes.
Uffa.. bin mal gespannt ob ich das, was ich hinkriegen will noch schaffe..
Ursprünglich hatte ich nur GridLayouts genutzt (und darin dann Composites
mit eigenen Layouts geschachtelt). Wenn ich das Bild aufgebaut hat waren
die beiden Composits richtig ausgerichtet, aber sobald man die Größe des
Fensters geändert hat hat das eine Composite das andere überzeichnet..
Liegt aber wohl an meiner Konstelation, ich nutze gerade ein Stacklayout
zusammen mit Grid und jetzt nun auch Formlayout..

Vielen Dank für Deine Hilfe, das hat mir sicherlich einige Zeit und Frust
gespart !

Besten Dank,


ich_wills_wissen
 

byte

Top Contributor
Jup genau, die Offset Werte sind in Pixeln (hätte ich vielleicht gleich dazu sagen können). Das ist sehr praktisch, wenn Du mit Hilfe von FormAttachments zwei Widgets aneinander andockst. Dann kann man damit nämlich noch einen kleinen Abstand zwischen den Elementen hinkriegen (Stichwort: Margin, Spacing, Padding). :)

Beim GridLayout musst Du häufig viele Felder des GridDatas setzen, damit es auch nach nem Resize noch gut aussieht (zum Beispiel minimumHeight/Width oder height/widthHint ...).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E GridLayout auf ScrollPane AWT, Swing, JavaFX & SWT 4
thor_norsk GridLayout AWT, Swing, JavaFX & SWT 11
H Swing , GridLayout, Größenbestimmung der Komponenten im Layout AWT, Swing, JavaFX & SWT 8
M Swing GridLayout AWT, Swing, JavaFX & SWT 2
D [Swing] Anordnung von Komponenten mit GridLayout Manager AWT, Swing, JavaFX & SWT 13
pkm kryptisches Verhalten bei GridLayout AWT, Swing, JavaFX & SWT 4
K Swing GridLayout - x und y bei Mausklick ausgeben AWT, Swing, JavaFX & SWT 4
S GridLayout SWT: Anordnung Composites nebeneinander AWT, Swing, JavaFX & SWT 2
B GridLayout - wie am besten implementieren AWT, Swing, JavaFX & SWT 3
B GridLayout Basics AWT, Swing, JavaFX & SWT 1
L Eigene JComponent in GridLayout AWT, Swing, JavaFX & SWT 9
fLooojava GridLayout - Frage bezüglich Kachelgröße AWT, Swing, JavaFX & SWT 5
F JPanel "verschmelzen" GridLayout AWT, Swing, JavaFX & SWT 10
M LayoutManager GridLayout funktioniert nicht AWT, Swing, JavaFX & SWT 0
T LayoutManager GridLayout panel.setSize funktioniert nicht AWT, Swing, JavaFX & SWT 1
F Gridlayout AWT, Swing, JavaFX & SWT 6
A JPanel oder GridLayout Größe festsetzten AWT, Swing, JavaFX & SWT 4
X GridLayout JPanel austauschen AWT, Swing, JavaFX & SWT 2
A JFrame Größenänderung mit Maus und GridLayout AWT, Swing, JavaFX & SWT 10
J Button in GridLayout AWT, Swing, JavaFX & SWT 2
C LayoutManager Grafik soll nicht im GridLayout Skalieren AWT, Swing, JavaFX & SWT 3
L LayoutManager GridLayout verschiebt sich AWT, Swing, JavaFX & SWT 6
B GridLayout AWT, Swing, JavaFX & SWT 6
T Spaltengröße einzelner Spalten in Gridlayout festlegen AWT, Swing, JavaFX & SWT 3
Karuka Abstände im GridLayout ändern AWT, Swing, JavaFX & SWT 8
Karuka 2D-Grafik Bilder in GridLayout einfügen AWT, Swing, JavaFX & SWT 7
C Scollpane an dynamisches GridLayout anpassen? AWT, Swing, JavaFX & SWT 3
J Swing Bilder anzeigen in Gridlayout AWT, Swing, JavaFX & SWT 11
C Linien über GridLayout zeichnen AWT, Swing, JavaFX & SWT 3
K Probleme mit Gridlayout AWT, Swing, JavaFX & SWT 4
U Elemente im Panel zentrieren mit GridLayout AWT, Swing, JavaFX & SWT 3
Z Swing JButton erweitern/Gridlayout AWT, Swing, JavaFX & SWT 2
L Swing GridLayout AWT, Swing, JavaFX & SWT 4
lumo LayoutManager SWT GridLayout - Reihenfolge ändern AWT, Swing, JavaFX & SWT 7
C Swing GridLayout: Kann man die Spaltenbreiten variabel gestalten? AWT, Swing, JavaFX & SWT 4
J SWT Größe eines Composite mit Gridlayout festlegen AWT, Swing, JavaFX & SWT 2
Y Kein GantChart in einem GridLayout AWT, Swing, JavaFX & SWT 5
M Formular in GridLayout ? AWT, Swing, JavaFX & SWT 17
R LayoutManager Problem mit GridLayout AWT, Swing, JavaFX & SWT 5
F LayoutManager GridLayout 0/0 auf andere Ecke setzen AWT, Swing, JavaFX & SWT 4
Rudolf Swing Gridlayout und Grouper vorhanden? AWT, Swing, JavaFX & SWT 4
S SWT GridLayout scrollbar machen? AWT, Swing, JavaFX & SWT 7
A Gridlayout Vertikal anordnen AWT, Swing, JavaFX & SWT 6
D LayoutManager GridLayout, 2 labels nebeneinander AWT, Swing, JavaFX & SWT 8
B Swing GridLayout.add über 2 Spalten? AWT, Swing, JavaFX & SWT 7
R LayoutManager GridLayout verändert isch andauernd AWT, Swing, JavaFX & SWT 4
A Frage zu GridLayout AWT, Swing, JavaFX & SWT 4
B GridLayout und scrollbar AWT, Swing, JavaFX & SWT 5
J Swing Bild in GridLayout AWT, Swing, JavaFX & SWT 8
aze GridLayout: Keine automatische Ausdehnung AWT, Swing, JavaFX & SWT 2
M SWT keine Scrollbar bei widgets.List und GridLayout AWT, Swing, JavaFX & SWT 2
M Image an Gridlayout anpassen AWT, Swing, JavaFX & SWT 5
E SWT Problem mit Gridlayout AWT, Swing, JavaFX & SWT 3
G SWT GridLayout AWT, Swing, JavaFX & SWT 2
lumo SWT GridLayout - clear? AWT, Swing, JavaFX & SWT 4
T GridLayout Zeilen Hintergrund AWT, Swing, JavaFX & SWT 5
N Gridlayout macht Probleme AWT, Swing, JavaFX & SWT 3
L GridLayout verändert festgesetzte Größe der Komponenten AWT, Swing, JavaFX & SWT 12
S Gridlayout - Tabellenzeile "beenden" AWT, Swing, JavaFX & SWT 3
Dragonfire GridLayout Probleme AWT, Swing, JavaFX & SWT 4
A JLabel, Icons und GridLayout AWT, Swing, JavaFX & SWT 3
C JPanel-Array in GridLayout AWT, Swing, JavaFX & SWT 4
G SWT GridLayout AWT, Swing, JavaFX & SWT 3
N Gridlayout 2. Spalte füllen AWT, Swing, JavaFX & SWT 4
W Problem mit GridLayout AWT, Swing, JavaFX & SWT 11
K Problem mit nem GridLayout AWT, Swing, JavaFX & SWT 5
T GridLayout, zu wenig Platz zwischen Widgets AWT, Swing, JavaFX & SWT 3
T SWT/Eclipse Form Controls zur Laufzeit hinzufügen,GridLayout AWT, Swing, JavaFX & SWT 4
M GridLayout mit fester Größe möglich? AWT, Swing, JavaFX & SWT 3
E Einfache Frage zu GridLayout AWT, Swing, JavaFX & SWT 35
G Größe der einzelenen Felder im GridLayout einstellbar? AWT, Swing, JavaFX & SWT 5
P Canvas in JFrame mit GridLayout AWT, Swing, JavaFX & SWT 4
F GridLayout: verschiedene Spaltenbreiten AWT, Swing, JavaFX & SWT 2
S GridLayout ? AWT, Swing, JavaFX & SWT 5
D AutoResize bei GridLayout ausschalten? AWT, Swing, JavaFX & SWT 2
D GridLayout mit nur einer Spalte, aber n Zeilen AWT, Swing, JavaFX & SWT 2
E GridLayout seltsame Anordnungsstrategie AWT, Swing, JavaFX & SWT 6
S Problemen mit Canvas-Objekten im GridLayout AWT, Swing, JavaFX & SWT 8
L Grids benennen beim GridLayout AWT, Swing, JavaFX & SWT 5
S GridLayout mit sehr großen Abständen AWT, Swing, JavaFX & SWT 3
V Frage zu GridLayout. AWT, Swing, JavaFX & SWT 3
P SWT GridLayout AWT, Swing, JavaFX & SWT 5
O gridlayout konstante größe AWT, Swing, JavaFX & SWT 3
TRunKX Problem mit dem GridLayout und den proportionen AWT, Swing, JavaFX & SWT 4
P SWT: GridLayout und Textfelder AWT, Swing, JavaFX & SWT 1
M GridLayout funktioniert nicht mehr. AWT, Swing, JavaFX & SWT 2
F GridLayout horizontal ausrichten AWT, Swing, JavaFX & SWT 6
K GridLayout: Colspan, Rowspan AWT, Swing, JavaFX & SWT 2
R GridLayout spinnt AWT, Swing, JavaFX & SWT 14
C leeres Element in Gridlayout einfuegen AWT, Swing, JavaFX & SWT 3
D Problem bei GridLayout und JPanels AWT, Swing, JavaFX & SWT 4
J GridLayout AWT, Swing, JavaFX & SWT 5
H GridLayout: Größe einer Komponente ändern AWT, Swing, JavaFX & SWT 2
L Frage zum GridLayout AWT, Swing, JavaFX & SWT 4
G kann man die aufteilung von GridLayout beeinflussen ? AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen

Neue Themen


Oben