Wie ausrichten JLabel-JTextField-Paare vertikal
Was ich damit meine, ein JLabel-JTextField-pair-Mädchen ist eine JLabel-Komponente, gefolgt von einem JTextField ein, zum Beispiel "Parameter 1: -----" wo "-----" steht für ein leeres JTextField.
Das problem ist, die Breite des JLabels variiert aufgrund der unterschiedlichen Längen der Namen der parameter, so dass der Start der JTextFields sind nicht vertikal ausgerichtet.
Gibt es eine Möglichkeit zum ausrichten des JLabels senkrecht zu Ihrer rechten, so dass der Start der JTextFields, die Folgen würden ausgerichtet werden? Danke.
Dies ist ein gutes Beispiel für
oder
MiGLayout
, wenn die Abhängigkeit ist akzeptabel.oder
FormLayout
von jgoodiesInformationsquelleAutor skyork | 2011-05-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
1.6+,
GroupLayout
. E. G. aus den JavaDocs:Verwenden Sie die label-Ausrichtung, die schiebt den text der RS.
Siehe auch diese Antwort für eine MCVE.
InformationsquelleAutor Andrew Thompson
Ihnen nicht angeben, welches layout Sie verwenden, so dass ein gutes layout zu implementieren, wäre GridBagLayout. Die demo in der oracle-Website ist großartig, mit zu beginnen.
Und ein kurzes Beispiel:
Dieser Ansatz Nester schön, wie man
LabelTextPanel
(mit einemGridBagLayout
) für jede Zeile in einerGridLayout
.InformationsquelleAutor MByD
oder
es ist möglich, richten Sie einfach text in JTextComponents mit
hmmm, das war gut-und es ist derselbe, wie zu erstellen EmptyBorder auf 10pixels durch die Verwendung von BorderLayout ... (Ort JComponents rund um CENTER-Standorten ohne Größenanpassung)
InformationsquelleAutor mKorbel
Dies ist ein perfekter Anwendungsfall für DesignGridLayout:
Es ist nicht Teil der standard-Bibliothek
OP nicht zu erwähnen, es musste ein Teil der standard-Bibliothek.
InformationsquelleAutor jfpoilpret
Ich würde vorschlagen, die GridLayout layout-manager. Es stellt die einfachste Lösung, um zu zeigen pair-wise Visualisierung von label-und textbox-Steuerelemente. Dabei definieren Sie einfach die Anzahl der Zeilen und Spalten, die bei der Instanziierung und die zusätzlichen Steuerelemente erfolgt über den manager.
richtig ist, obwohl dies funktionieren kann, wenn die Etiketten und die Felder sind von vergleichbarer Größe und, wenn verwendet mit @mKorbel answer.
InformationsquelleAutor Osiris76
Gute Lösungen für diese, die ich gesehen habe gehören die Verwendung des GridBagLayout (wie oben erwähnt) oder der MiGLayout, obwohl da letztere nicht Teil der standard-Java, es muss heruntergeladen werden und auf dem Klassenpfad vor der Verwendung. MiGLayout ist nicht so schwer zu verwenden.
InformationsquelleAutor Hovercraft Full Of Eels
Dem LayoutManager der parent-Komponente hat die Verantwortung für die Positionierung der enthaltenen Elemente. Vielleicht müssen Sie ein XYLayout.
Sehen die setLayoutManager() für Ihr übergeordneten Klasse.
InformationsquelleAutor SJuan76