/ / Wie kann man die Skalierung von Swing-Komponenten steuern? - Java, Swing, Benutzeroberfläche, Jframe, Skalierung

Gibt es eine Möglichkeit, die Skalierung von Swing-Komponenten zu steuern? - Java, Swing, Benutzerschnittstelle, Jframe, Maßstab

Ich versuche, meine Swing-Komponenten nicht skalieren zu lassenEntweder vertikal und horizontal skalieren oder umgekehrt (mit anderen Worten, ich möchte nur, dass sie eine Freiheitsachse haben. Sie können in einigen Fällen entweder horizontal skalieren oder in anderen vertikal).

Gibt es eine elegante Möglichkeit, dies zu tun, ohne eine Vielzahl von JPanels hinzuzufügen?

LE: Ich möchte keine wesentlichen Änderungen am bereits erstellten Layout vornehmen.

Ich hoffe auf eine magische, einfache Lösung für dieses Problem wie JTextField.don "tScaleVerticallyIdiot ();

Antworten:

3 für die Antwort № 1

Sie müssen einen geeigneten Layout-Manager verwenden.

Die zwei mächtigsten sind MigLayout und FormLayout. Ich persönlich bevorzuge MigLayout, weil es einfacher ist, es direkt zu verwenden, während FormLayout nur mit einem Fensterdesigner funktioniert WindowBuilder.

Beide haben ähnliche Merkmale.

Mit MigLayout können Sie angeben, ob eine Komponente auf einer bestimmten Achse wachsen darf, und wenn ja, welche Art von Gewicht bereitgestellt werden soll (im Gegensatz zu zusätzlichem Platz für andere Komponenten).


2 für die Antwort № 2

Ich denke, das kann man mit der Einstellung erreichen BorderLayout Als ein LayoutManager des Behälters, also:


2 für die Antwort № 3

Sie haben nicht erwähnt, welche LayoutManager die Sie gerade verwenden.

Persönlich würde ich verwenden GridBagLayout für das, was Sie erreichen wollen.


1 für die Antwort № 4

Ich möchte, dass es sich um eine einzelne Zeile handelt, deren Höhe horizontal und horizontal so hoch ist wie ich den Rahmen ziehe, ohne jedoch mehrere JPanels hinzuzufügen.

Ich denke BoxLayout mit einem PAGE_AXIS kann das tun.