Welcher Layout Manager

Welchen Layout Manager könnt Ihr empfehlen?

Ich benutze netbeans und finde ihn sehr komfortabel zum erstellen der Gui.
Allerdings ist die Auswahl der Layouts so riesig, da weiss man z.Tel gar nicht wlechen man nehmen soll. Gut finde ich das Null LAyout, mit dem ich die komponenten platzieren kann wo ich will. Einziger nachteil in meinen augen ist, dass ich so leider die komponenten nicht an die größe des fensters anpassen kann. Welchen empfehlt ihr für soclhe fälle?

Achso der flowlayout manager ist wahrscheinlich für kleine menüs geeignet also aneinanderreihung von buttons z.b. ?!

Jeder LayoutManager verfolgt eine andere Strategie des Anordnens von Komponenten. Mein Favorit, wenn auch nicht ganz trivial, ist GridBagLayout.
In NetBeans wird der hervorragend unterstützt und ich finde ihn auch besser als das GroupLayout (Freedesign).
Auch ziemlich gut ist das nicht im Standard-API enthaltene TableLayout.

LayoutManager wären mal ein Thema für’s Wiki…

Welcher Layoutmanager der “beste” ist kann man nicht sagen, das hängt immer vom Anwendungfall ab.
Ich persönlich hab eine Abneigung gegen GUI Designer daher schreib ich die immer von Hand, so wählt man meiner Meinung nach auch schon besser den Manager aus.
Ich verwende meistens Gridbag dazu kommen FlowLayout, BorderLayout und wenn sich die GUI “umschalten” soll noch das CardLayout.

Null Layout wird zwar von NertBeans unterstützt, ist aber in Wirklichkeit gar kein Layoutmanager,
also nicht zu empfehlen. Etwas besser wäre dan schon das ebenfalls von NetBeans angebotete
Absolute Layout. Ich persönlich benutze meist nur Verschachtelungen von BorderLayouts
und FlowLayouts, gelegentlich auch mal GridBagLayout. Es ist übrigens auch nicht schwierig,
einen eigenen Layoutmanager zu schreiben, wie z.B. mein ListLayout.jar (Quellcode im jar)

André, du solltest doch wissen, dass in ein Manifest die Angabe der Main-Class gehört. :wink:

Und AbsolutLayout gefällt mir persönlich nicht, weil ich dann extra eine externe Bibliothek einbinden müsste, die meines Wissens in der Funktion dem NullLayout ähnelt.

Aber doch nur wenn es sich dabei um eine Applikation handelt und nicht um eine Bibliothek :wink:

Ich benutze eigentlich meist eine Kombination aus BorderLayout und GridBagLayout und dann je nach Anwendungsfall auch andere. NullLayout ist IMHO nur für Non-Resizeable Dialoge wirklich sinnvoll wo es nur darauf ankommt das die Komponenten absolut positioniert sind.

Gut Schuß
VuuRWerK :wink:

Hmm, da hast du Recht. Allerdings bin ich von André ausführbare Beispiele gewohnt…

[QUOTE=L-ectron-X]André, du solltest doch wissen, dass in ein Manifest die Angabe der Main-Class gehört. :wink:

Und AbsolutLayout gefällt mir persönlich nicht, weil ich dann extra eine externe Bibliothek einbinden müsste, die meines Wissens in der Funktion dem NullLayout ähnelt.[/QUOTE]

Die Manifest Frage ist ja bereits geklärt worden.
Im Gegensatz zum Null Layout ist Absolute Layout ein echter Layoutmanager.
Der Vorteil: wie alle Layoutmanager nutzt er die PreferredSize.
(Übrigens ist der Gebrauch externer libs ja nix Aussergewöhnliches.)

Ich habe jetzt erstmal das ull layout benutzt. HAbe das fenster nicht resizble gemacht und dann ist da sowit ok… hab jetzt schon öfter gehört das das cardlayout ganz gut sien soll um zwischen panels zu schwenken. werd ich mir mal als nächstes antun :smiley:

das hilft dir aber nicht, sobald jemand ein anderes LnF benutzt wird es dir das Layout zerschießen

Das gibt es sogar schon unterschiede bei verschiedenen Plattformen. Selbst mal erlebt, auf Win sah alles noch ok aus, auf Linux passte nix mehr, da war der Abstand zum Fensteraussenrand auf der rechten Seite gleich null, hm vllt heist es ja deswegen NullLayout :o)

Gut Schuß
VuuRWerK :wink:

Stimmt, man muss bereits mit Unterschieden zwischen den Plattformen rechnen.

was ist denn ein LnF

Eigentlich LAF. Bedeutet LookAndFeel, bzw. plugable look and feel.
Es handelt sich hierbei um anpassbare Optik und “Gefühl” einer Benutzeroberfläche. Bspw. kann man einem Java-Programm sagen, dass es wie ein Windows-Programm aussehen und sich “benehmen” soll.
Es gibt wenigstens 20 bekannte LAFs, mit denen die GUI optisch verändert/verbessert werden kann.