Layout, aber welches?

Status
Nicht offen für weitere Antworten.

eddy

Aktives Mitglied
Guten Morgen,
wir haben gestern in der Uni mit Layout angefangen.
Allerdings finde ich es nicht vorteilhaft das allen Buttons,
Felder etc. feste Positionen bekommen.

Welches Layout ist denn das meist verwendete :rtfm: und
welches ist denn das beste zum entwickeln?

Grüße und schon mal ein schönes Wochenende! ;)

Phil
 

XFlipX

Aktives Mitglied
Hallo,

also ich finde das GridBagLayout nicht schlecht. Ich verwende es in meinem derzeitigen Projekt merhmals. Ist zwar etwas kompliziert aber dafür flexibler als all die anderen Layoutmanager.

XFlipX

Ps.: Wenn du den Dreh raus hast, ist auch das GridBagLayout leicht zu handeln.
 

KrokoDiehl

Top Contributor
Also "das Beste" gibt es wohl mal ganz und gar nicht :p ...denn es kommt immer drauf an, was du erreichen willst.
Am einfachsten zum Testen ist wohl das BorderLayout, dass alle Container von vorn herein haben und man durch Ortsangaben wie CENTER, NORTH, SOUTH immerhin beim programmieren schonmal weiß, was wo hinkommt.

Natürlich genügt das für die meisten GUIs nicht, daher gibt es noch mehr LayoutManager. Welcher im konkreten Fall der Beste ist lässt sich erst sagen, wenn man den konkreten Fall kennt ;)

Also anschauen und zumindest grob verstehen, was die einzelnen Manager machen, sollte man bei allen. Mit dem GridBagLayout, da stimme ich zu, kann man am meisten Einfluss nehmen. Aber ich habe zumindest immernoch Probleme hier und da damit, weil es nicht einfach ist ;)
 

-MacNuke-

Bekanntes Mitglied
Mächtig und einfach ist das MigLayout :) Ist aber noch ein externes Jar.

MiG Layout Java Layout Manager for Swing and SWT

Java:
 JPanel panel = new JPanel(new MigLayout());

    panel.add(firstNameLabel);
    panel.add(firstNameTextField);
    panel.add(lastNameLabel,       "gap unrelated");
    panel.add(lastNameTextField,   "wrap");
    panel.add(addressLabel);
    panel.add(addressTextField,    "span, grow");

Form.png
 

Marco13

Top Contributor
Ja, das GridBagLayout ... Totally Gridbag – madbean ;)

Ich finde, meistens kommt man mit BorderLayout und GridLayout schon hin. Es gibt eine Sache, die damit nicht schön geht, und für die ich GridBagLayout verwende(n würde), nämlich sowas wie
Code:
someLabel         TextField
someOtherLabel    TextField
someVeryLongLabel TextField
shortLabel        TextField
button            TextField
Ansonsten gibt's viele Alternativen wie TableLaoyut oder PercentLayout, aber die brauchen eben immer externe Bibliotheken...
 

Oli

Top Contributor
Hi,

also meiner Meinung ist das GridbagLayout das "einfachste". Die Anführungszeichen deshalb, weil es sicher kompliziert zu erlernen ist, aber wenn man´s mal verinnerlicht hat, ist es sehr leicht jede Art von GUI zu entwickeln.

Übung macht den Meister :D
 

eddy

Aktives Mitglied
Zur Verwendung...
Es soll halt möglich sein die Maske auf jede erdenkliche Größe anzupassen.
Wenn einer nur min. eine 1024x768 Auflösung hat soll der Bildschirm ausgefüllt sein,
genauso soll das Programm den ganzen Bildschirm ausfüllen wenn dieser eine Full HD Auflösung hat.

Dabei soll aber nicht alles zu gleichen fällen wachsen, sondern halt nur bestimmte Bereiche oder Felder, Buttons soll dabei Ihrer größe zb behalten.

So ungefähr verstanden was ich meine?
Und hat einer vllt ein beispiel dafür?

Lg
 

MacMallow

Mitglied
Würde ich wohl mit dem TableLayout machen (bin einfach kein Freund des GridbagLayouts). Da kannst du festlegen ob Spalten/Reihen eine feste Größe haben sollen, oder ob sich die Größe in Abhängigkeit der Fenstergröße mitberändern soll.

EDIT: Hier ein Tutorial in dem die Funktionsweise klar wird

Part1
Part2
 
Zuletzt bearbeitet:

-MacNuke-

Bekanntes Mitglied
Also GridBagLayout würde ich nicht nehmen. Dazu benötigt man viel zu viel (und noch mal viel mehr) Code und wenn ein anderer Mitarbeiter mal was an der GUI anpassen soll, dann braucht der erst mal 1-2 Monate Schulung dafür, in der Hoffnung es dann kapiert zu haben...

Bei Miglayout hast du echt den Vorteil, dass alles über leicht verständliche Strings klar lesbar ist, was dieser Eintrag jetzt macht (z.B. span, growx, growy, wrap, left, top). Du kannst auch Global bestimmte Sachen von vordefinieren, sodass du die die Strings dahinter sogar ganz sparen kannst. Kein Spalten&Reihenzählen, keine Koordinaten, leichte Anpassung.

noch ein Beispiel:

Java:
JPanel p = new JPanel(new MigLayout("","[grow][]","[][][][grow]"));
p.add(new JButton("Klick mich1"),"wrap");
p.add(new JTextField("Klick mich2"),"growx");
p.add(new JButton("Klick mich3"),"wrap");
p.add(new JTextField("Klick mich3",20),"top");
p.add(new JButton("Klick mich4"),"wrap");
p.add(new JScrollPane(new JTextArea("Das ist eine TextArea")),"span 2, grow");

Wie man leicht lesen kann, wächst das Textfeld "Klick mich2" horizontal mit, "Klick mich3" tut das nicht und die Textarea spannt sich über beide Spalten und wächst in beide Richtungen.

attachment.php
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Angehängtes Layout, aber wie? AWT, Swing, JavaFX & SWT 12
S Welches Java Layout sollte ich verwenden? AWT, Swing, JavaFX & SWT 3
S Layout - Problem AWT, Swing, JavaFX & SWT 1
D Layout einer scene mit ListView Elementen und Zwei Textfeldern AWT, Swing, JavaFX & SWT 1
H Swing , GridLayout, Größenbestimmung der Komponenten im Layout AWT, Swing, JavaFX & SWT 8
melaniemueller Layout wechseln über RadioButtons AWT, Swing, JavaFX & SWT 4
E LayoutManager Welcher Layout-Mix löst mein Problem? AWT, Swing, JavaFX & SWT 3
J Swing Hilfe bei Layout AWT, Swing, JavaFX & SWT 2
R Layered Layout AWT, Swing, JavaFX & SWT 1
E showAndWait is not allowed during animation or layout processing Memory FX AWT, Swing, JavaFX & SWT 2
newJavaGeek Grid-Layout problem AWT, Swing, JavaFX & SWT 7
E Swing Layout während der Laufzeit anpassen AWT, Swing, JavaFX & SWT 3
P JavaFX Zugriff auf Fenster/Layout-Container in eigenen Klassen AWT, Swing, JavaFX & SWT 5
R Layout Manager null und Component wird nicht hinzugefügt AWT, Swing, JavaFX & SWT 3
S Kann javafx.scene.layout.VBoxBuilder nicht importieren AWT, Swing, JavaFX & SWT 3
OSchriever Layout über Radiobuttons ändern AWT, Swing, JavaFX & SWT 4
B Swing Probleme mit dem Layout AWT, Swing, JavaFX & SWT 1
Hatsi09 JButton text layout AWT, Swing, JavaFX & SWT 9
I JavaFX - festes Layout AWT, Swing, JavaFX & SWT 1
S JavaFX TableView einzelne Zelle Layout zuweisen AWT, Swing, JavaFX & SWT 3
DaCrazyJavaExpert Swing Zwei gleichgroße Panels in einem Scrollpane mit Layout AWT, Swing, JavaFX & SWT 9
Neumi5694 Swing Card-Layout, Fokus AWT, Swing, JavaFX & SWT 2
kilopack15 Interface mit Layout verknüpfen AWT, Swing, JavaFX & SWT 2
Y Layout/Ausrichtungsprobleme AWT, Swing, JavaFX & SWT 4
T JavaFX Custom Layout AWT, Swing, JavaFX & SWT 5
A GUI Layout AWT, Swing, JavaFX & SWT 11
A Layout-Manager, JScrollPane, ... Chaos AWT, Swing, JavaFX & SWT 5
L wie Layout-Grid in JXPanel anzeigen? AWT, Swing, JavaFX & SWT 5
L Eigene Component Layout AWT, Swing, JavaFX & SWT 4
Soloeco LayoutManager Wie und welches Layout nutze ich am Besten? AWT, Swing, JavaFX & SWT 13
M LayoutManager Modalen JDialog ein Layout zuweisen AWT, Swing, JavaFX & SWT 3
M LayoutManager Layout reagiert nicht auf Constraints AWT, Swing, JavaFX & SWT 4
IsSchoGuat LayoutManager Layout-Containergrösse AWT, Swing, JavaFX & SWT 4
F GridBag Layout AWT, Swing, JavaFX & SWT 1
Z Absolutes Layout / Kontrolle über Anordnung AWT, Swing, JavaFX & SWT 3
M Mehrere Jpanel in einem JScrollPane (Layout) AWT, Swing, JavaFX & SWT 2
M Layout-Probleme unter Swing AWT, Swing, JavaFX & SWT 5
D LayoutManager GUI skalieren und deren Komponenten mit Grid(Bag)Layout-Manager. AWT, Swing, JavaFX & SWT 5
J ComboBoxModel addElement verändert Layout AWT, Swing, JavaFX & SWT 8
E Probelm mit Layout AWT, Swing, JavaFX & SWT 1
B Hilfe welches Layout brauch ich AWT, Swing, JavaFX & SWT 4
P Tipps für GUI-Layout AWT, Swing, JavaFX & SWT 2
M Passender Layout-Manager AWT, Swing, JavaFX & SWT 3
M LayoutManager Layout zur Laufzeit ändern AWT, Swing, JavaFX & SWT 8
N Swing Zweifarbiges Layout für den Filechooser AWT, Swing, JavaFX & SWT 12
B LayoutManager Card Layout AWT, Swing, JavaFX & SWT 2
1 Eigenes Layout schreiben AWT, Swing, JavaFX & SWT 4
B SWT layout invalidieren in SWT? AWT, Swing, JavaFX & SWT 4
R Welchen Layout Manager/ Wie strukturieren? AWT, Swing, JavaFX & SWT 14
J Layout: oben 20% unten 80% AWT, Swing, JavaFX & SWT 12
T Layout für Listendarstellung AWT, Swing, JavaFX & SWT 3
F LayoutManager Null-Layout unter Linux im TreeCellEditor AWT, Swing, JavaFX & SWT 3
K Eclipse Layout (Gimp Layout, Tiled Layout...) AWT, Swing, JavaFX & SWT 4
C LayoutManager Passendes Layout gesucht AWT, Swing, JavaFX & SWT 2
M Layout funktioniert nicht AWT, Swing, JavaFX & SWT 3
dzim Layout von Panes in JFX2 AWT, Swing, JavaFX & SWT 17
H Layout Idee AWT, Swing, JavaFX & SWT 8
M Swing Dynamisches Layout AWT, Swing, JavaFX & SWT 10
P Swing welchen Layout Manager verwenden AWT, Swing, JavaFX & SWT 9
J LayoutManager Komponentenaustausch zerschießt Layout AWT, Swing, JavaFX & SWT 4
F Layout-Problem AWT, Swing, JavaFX & SWT 2
K Gui Layout Frage AWT, Swing, JavaFX & SWT 5
B Anderen Layout-Manager verwenden AWT, Swing, JavaFX & SWT 17
E Null-Layout - Wie geht es ohne? AWT, Swing, JavaFX & SWT 19
Furtano AWT mehrere Bilder in einen Frame zeichnen + Layout Manager AWT, Swing, JavaFX & SWT 10
L Swing dynamisches Image-Panel in Layout einbinden AWT, Swing, JavaFX & SWT 10
D Bild in JPanel verschiebt Layout. Wie fixieren? AWT, Swing, JavaFX & SWT 9
GUI-Programmer Wieder ne Layout Frage AWT, Swing, JavaFX & SWT 11
GUI-Programmer LayoutManager Kurze Layout Frage - eine komponente mittig? AWT, Swing, JavaFX & SWT 5
D Problem mit 3-Spalten Layout AWT, Swing, JavaFX & SWT 17
ARadauer Wenig Material zum Thema: Design, Layout, Usability von Swing Anwendungen AWT, Swing, JavaFX & SWT 11
S LayoutManager Welcher LayoutManager für dieses zweispaltige Layout? AWT, Swing, JavaFX & SWT 13
G LayoutManager Layout welches von Links nach rechts anordnet mit TOP Alignment! AWT, Swing, JavaFX & SWT 5
A Best practice für konkretes Layout AWT, Swing, JavaFX & SWT 10
G LayoutManager Layout für Spalten AWT, Swing, JavaFX & SWT 8
A Layout/JPanelgröße AWT, Swing, JavaFX & SWT 6
S pack() bei null-Layout AWT, Swing, JavaFX & SWT 10
C SWT Tabellen-Layout in StyledText? AWT, Swing, JavaFX & SWT 6
J LayoutManager Welchen Layout/Design-Manager? AWT, Swing, JavaFX & SWT 4
R Swing Layout setzen AWT, Swing, JavaFX & SWT 3
L Layout automatische Anpassung umgehen? AWT, Swing, JavaFX & SWT 5
A Problem mit Layout-Manager AWT, Swing, JavaFX & SWT 11
J Button Layout anpassen AWT, Swing, JavaFX & SWT 22
H LayoutManager Layout mit GridBagLayout machbar? AWT, Swing, JavaFX & SWT 6
B Buttongröße im Layout AWT, Swing, JavaFX & SWT 4
B LayoutManager Layout Problem AWT, Swing, JavaFX & SWT 14
O LayoutManager Layout entwerfen AWT, Swing, JavaFX & SWT 3
A diverse Layout-Fragen AWT, Swing, JavaFX & SWT 4
F LayoutManager Eigenes Layout die Lösung?! AWT, Swing, JavaFX & SWT 4
dzim SWT Layout mit Sections aus Eclipse Forms AWT, Swing, JavaFX & SWT 17
F JScrollPane verwirft Layout von JPanel AWT, Swing, JavaFX & SWT 2
C LayoutManager Layout und vergrößern des Frames AWT, Swing, JavaFX & SWT 5
E Swing Runde Buttons / Position eines Obj. im Layout AWT, Swing, JavaFX & SWT 7
S Swing UI-Elemente ordnen sich ungewollt in einer Reihe (ohne Layout) AWT, Swing, JavaFX & SWT 5
A Ungewollte Layout änderungen AWT, Swing, JavaFX & SWT 3
A Suche: Eclipse-GUI-Layout AWT, Swing, JavaFX & SWT 5
E JPanel mit Null Layout entfernt Buttons AWT, Swing, JavaFX & SWT 11
N Swing Layout positionieren AWT, Swing, JavaFX & SWT 2
B Methode setzt nicht das Layout in einer if-Abfrage AWT, Swing, JavaFX & SWT 13
H LayoutManager Dynamisches Layout AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen


Oben