Was ich mit einem JLabel-JTextField-Paar meine, ist eine JLabel-Komponente gefolgt von einer JTextField-Eins, zum Beispiel "Parameter 1: -----" wobei "-----" für ein leeres JTextField steht.
Das Problem ist, dass die Breite von JLabels aufgrund der unterschiedlichen Länge der Parameternamen variiert, so dass die Starts von JTextFields nicht vertikal ausgerichtet sind.
Gibt es eine Möglichkeit, die JLabels vertikal an ihrer rechten auszurichten, sodass die nachfolgenden JTextFields ausgerichtet werden? Danke.
Gibt es eine Möglichkeit, die JLabels vertikal an ihrer rechten auszurichten, sodass die nachfolgenden JTextFields ausgerichtet werden?
1.6+, GroupLayout
. Z.B. von den JavaDocs:
Verwenden Sie die Etikettenausrichtung, die den Text an den RHS schiebt.
Siehe auch diese Antwort für einen MCVE.
Sie haben nicht angegeben, welches Layout Sie verwenden. Ein gutes Layout für die Implementierung wäre also GridBagLayout . Die Demo auf der Oracle-Seite ist großartig, um damit zu beginnen.
Und ein kurzes Beispiel:
%Vor%Dies ist ein perfekter Anwendungsfall für DesignGridLayout :
%Vor%Ich würde den Layout-Manager GridLayout empfehlen. Es stellt die einfachste Lösung dar, um paarweise Visualisierungen von Label- und Textbox-Steuerelementen anzuzeigen. Dadurch definieren Sie einfach die Anzahl der Zeilen und Spalten zum Zeitpunkt der Instanziierung und die hinzugefügten Steuerelemente werden vom Manager verwaltet.
Gute Lösungen dafür, die ich gesehen habe, schließen die Verwendung des GridBagLayout (wie oben erwähnt) oder des MiGLayout ein, obwohl seit dem Letzteres ist nicht Bestandteil von Standard-Java. Es muss heruntergeladen und vor der Verwendung auf dem Klassenpfad platziert werden. MiGLayout ist nicht so schwierig zu benutzen.
Tags und Links java user-interface swing alignment