LayoutManager der Elemente untereinander anordnet.

Status
Nicht offen für weitere Antworten.
J

jago

Gast
Hi,

Ich suche einen LayoutManager der JComponents (ca. 20) untereinander anordnet in einer Spalte.

In der Breite sollen die JComponents der Breite des Containers angepasst werden.
Veraendert man die Hoehe des Containers sollen die JComponents weiterhin ihre preferred Hoehe behalten. GridLayout macht das ja leider nicht.

Wuerde am liebsten keine externen libs verwendern - also alleine mit Java Boardmitteln schaffen wenn es geht.

Danke...jago
 
G

Guest

Gast
L-ectron-X hat gesagt.:

Wirklich...das ist doch so super-kompliziert. Keiner will diesen LayoutManager nutzen...

Habt ihr dann fuer mein Problem Beispielcode oder gibt es nicht doch einen einfacheren Layoutmanager fuer mein Problem?

Danke,
jago
 

GilbertGrape

Bekanntes Mitglied
Vielleicht kann ich mich hier mal kurz einklinken...

Kann man bei dem BoxLayout auch festlegen, dass die Komponenten linksbündig angeordnet werden? Weil wenn ich das BoxLayout benutze, sind die Komponenten in der Mitte untereinander.

Danke, Gilbert
 

L-ectron-X

Gesperrter Benutzer
Anonymous/jago hat gesagt.:
Wirklich...das ist doch so super-kompliziert. Keiner will diesen LayoutManager nutzen...
Habt ihr dann fuer mein Problem Beispielcode oder gibt es nicht doch einen einfacheren Layoutmanager fuer mein Problem?
Ist doch gar nicht so schwer.
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class GridBagTest extends JFrame {
   public GridBagTest(String title) {
      super(title);
      setSize(300, 600);
      setLocationRelativeTo(null);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      
      JPanel panel = new JPanel(new GridBagLayout());

      GridBagConstraints gbc = new GridBagConstraints();
      JButton button1 = new JButton("1");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.weightx = 1.0;
      panel.add(button1, gbc);
      
      JButton button2 = new JButton("2");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridy = 1;
      panel.add(button2, gbc);
      
      JButton button3 = new JButton("3");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridy = 2;
      panel.add(button3, gbc);
      
      JButton button4 = new JButton("4");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridy = 3;
      panel.add(button4, gbc);
      
      //und so weiter...
      JButton button5 = new JButton("...und so weiter...");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridy = 4;
      panel.add(button5, gbc);
      
      JButton button20 = new JButton("20");
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.anchor = GridBagConstraints.NORTH;
      gbc.weighty = 1.0;
      gbc.gridy = 6;
      panel.add(button20, gbc);
      
      add(panel);
   }

   public static void main(String[] args) {
      try {
         UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
      }
      catch(Exception e) {
         e.printStackTrace();
      }
      new GridBagTest("GridBagTest").setVisible(true);
   }
}
Immer noch Fragen? ;)
 

Krondor

Aktives Mitglied
Per BoxLayout kann man mit etwas geschick Komponenten auch linksbündig anbringen. Einfach en bißchen schachteln.

Ich skizziere das mal:

Code:
public void createGUI() {
  JPanel pnl = new JPanel();
  pnl.setLayout(new BoxLayout(pnl1, BoxLayout.PAGE_AXIS); //Vertikal
  
  //.... Erstellen der Komponenten kommt hier hin
  pnl.add(getLeftAlignedComponent(comp1);
  pnl.add(getLeftAlignedComponent(comp2);
  pnl.add(getLeftAlignedComponent(comp3);

  //.... JPanel pnl ins Fenster einfügen etc.
}

public JPanel getLeftAlignedComponent(JComponent comp) {
  JPanel pnlTemp = new JPanel();
  pnlTemp .setLayout(new BoxLayout(pnlTemp , BoxLayout.LINE_AXIS); //Horizontal
  pnlTemp.add(comp);
  pnlTemp.add(Box.createHorizontalGlue());
  return pnlTemp;
}

So grob halt....
 

byte

Top Contributor
GridBagLayout ist der letzte Mist, weil kompliziert und man muss viel zu viel Code schreiben. TableLayout ist da wesentlich kompakter und schöner. Ansonsten für einfache Sachen halt BorderLayout, FlowLayout und BoxLayout.

Mit BoxLayout könnte es so in der Art funktionieren (ungetestet):

Code:
		public static JPanel newVerticalPanel() {
			JPanel panel = new JPanel();
			panel.setAlignmentX(Component.LEFT_ALIGNMENT);
			panel.setAlignmentY(Component.TOP_ALIGNMENT);
			BoxLayout layout = new BoxLayout(panel, BoxLayout.PAGE_AXIS);
			panel.setLayout(layout);
			return panel;
		}

Dort einfach mit #add() die Komponenten hinzufügen und sie sollten vertikal und links-zentriert angeordnet sein.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G LayoutManager Beliebige Anzahl von Panels für LayoutManager AWT, Swing, JavaFX & SWT 3
R Swing Welche LayoutManager sind die richtigen für mich? AWT, Swing, JavaFX & SWT 11
F Zeichnung einem JPanel im Layoutmanager zuweisen AWT, Swing, JavaFX & SWT 3
Z Swing Welcher Layoutmanager bei ScrollPane? AWT, Swing, JavaFX & SWT 4
F Welchen Layoutmanager verwenden? AWT, Swing, JavaFX & SWT 2
G Komponenten vergrößern sich nicht trotz Layoutmanager AWT, Swing, JavaFX & SWT 24
N Welcher LayoutManager AWT, Swing, JavaFX & SWT 16
Birke Swing Neue Swing LayoutManager: TOnion Projekt AWT, Swing, JavaFX & SWT 10
B Swing JLabel und LayoutManager AWT, Swing, JavaFX & SWT 20
F Swing Layoutmanager für Mittplatzierung ? AWT, Swing, JavaFX & SWT 6
B SWT Dynamische GUI (Layoutmanager?) AWT, Swing, JavaFX & SWT 2
J Welche(n) LayoutManager für große Gui? AWT, Swing, JavaFX & SWT 6
D Layoutmanager in Java Swing vs. Java AWT AWT, Swing, JavaFX & SWT 3
P Layoutmanager-Richtlinie ? AWT, Swing, JavaFX & SWT 8
J 2 Bereiche im Frame komplett nutzen - Welchen Layoutmanager? AWT, Swing, JavaFX & SWT 3
TheWhiteShadow Swing suche passenden LayoutManager AWT, Swing, JavaFX & SWT 8
SexyPenny90 Welcher LayoutManager erfüllt meine Bedingung AWT, Swing, JavaFX & SWT 7
C SWT LayoutManager AWT, Swing, JavaFX & SWT 2
L LayoutManager macht nichts AWT, Swing, JavaFX & SWT 19
S LayoutManager Welcher LayoutManager für dieses zweispaltige Layout? AWT, Swing, JavaFX & SWT 13
R Layoutmanager AWT, Swing, JavaFX & SWT 4
M Fenster aufteilen, aber mit welchem LayoutManager? AWT, Swing, JavaFX & SWT 10
G LayoutManager LayoutManager gesucht AWT, Swing, JavaFX & SWT 2
R Swing Variable Panelbreite ohne Layoutmanager AWT, Swing, JavaFX & SWT 6
R LayoutManager Problem mit setLayout(LayoutManager) AWT, Swing, JavaFX & SWT 9
F Anfängerfrage: Swing und LayoutManager AWT, Swing, JavaFX & SWT 4
V LayoutManager Eigener LayoutManager funktioniert nicht. AWT, Swing, JavaFX & SWT 5
N LayoutManager suche LayoutManager für Tabellenstruktur AWT, Swing, JavaFX & SWT 2
D LayoutManager JPanels ohne LayoutManager platzieren AWT, Swing, JavaFX & SWT 6
Ollek JTextField Verhalten mit LayoutManager AWT, Swing, JavaFX & SWT 8
B LayoutManager mischen keine gute Idee? AWT, Swing, JavaFX & SWT 9
hdi SWT Suche passenden LayoutManager AWT, Swing, JavaFX & SWT 5
C passender layoutmanager gesucht AWT, Swing, JavaFX & SWT 2
I Swing Positionieren von Panels mit layoutManager AWT, Swing, JavaFX & SWT 6
E Swing Suche LayoutManager AWT, Swing, JavaFX & SWT 5
E Layoutmanager mit fester Breite gesucht AWT, Swing, JavaFX & SWT 9
R Layoutmanager AWT, Swing, JavaFX & SWT 13
K Swing JInternalFrame und LayoutManager AWT, Swing, JavaFX & SWT 6
W LayoutManager Hell AWT, Swing, JavaFX & SWT 2
P JPanel: LayoutManager und trotzdem absolut positionieren? AWT, Swing, JavaFX & SWT 3
J eigener Layoutmanager? AWT, Swing, JavaFX & SWT 6
M JLabel mit Layoutmanager AWT, Swing, JavaFX & SWT 2
G Layoutmanager mit festem Gitter AWT, Swing, JavaFX & SWT 6
R getInsets ohne Layoutmanager AWT, Swing, JavaFX & SWT 7
R LayoutManager ähnlich BorderLayout, mit einer Ausnahme AWT, Swing, JavaFX & SWT 2
T Layoutmanager der vorhanden Platz beruecksichtigt? AWT, Swing, JavaFX & SWT 5
F Der richtige Layoutmanager AWT, Swing, JavaFX & SWT 6
G LayoutManager und Abstand AWT, Swing, JavaFX & SWT 6
A LayoutManager-Wünsche AWT, Swing, JavaFX & SWT 16
T % von Komponenten unter Layoutmanager AWT, Swing, JavaFX & SWT 2
M Layoutmanager und Komponente AWT, Swing, JavaFX & SWT 2
F LayoutManager und Component.setVisible(boolean) AWT, Swing, JavaFX & SWT 2
G Fenster mit LayoutManager AWT, Swing, JavaFX & SWT 3
C Verschachtelung von JPanels mit verschiedenen LayoutManager AWT, Swing, JavaFX & SWT 4
T JInternalFrame Konflikt mit LayoutManager AWT, Swing, JavaFX & SWT 5
S JTextField ohne LayoutManager positionieren AWT, Swing, JavaFX & SWT 3
F PanelBounds an TextPaneBounds anpassen LayoutManager: Null AWT, Swing, JavaFX & SWT 2
B Welchen LayoutManager? AWT, Swing, JavaFX & SWT 17
S Wie funktioniert der LayoutManager? AWT, Swing, JavaFX & SWT 9
P Zeichnen + LayoutManager AWT, Swing, JavaFX & SWT 7
B Layoutmanager Tutorial AWT, Swing, JavaFX & SWT 15
M LayoutManager Informationen AWT, Swing, JavaFX & SWT 4
L LayoutManager ähnlich wie FlowLayout AWT, Swing, JavaFX & SWT 5
S Welchen Layoutmanager? AWT, Swing, JavaFX & SWT 6
D LayoutManager und JPanel AWT, Swing, JavaFX & SWT 9
J Welcher Layoutmanager? AWT, Swing, JavaFX & SWT 20
L Probleme mit Scrollbar und LayoutManager AWT, Swing, JavaFX & SWT 3
G Neuer LayoutManager AWT, Swing, JavaFX & SWT 3
M Elemente statisch anordnen AWT, Swing, JavaFX & SWT 4
_user_q ChoiceBox Elemente: Sprache ändern AWT, Swing, JavaFX & SWT 7
T Elemente auf vorheriger Stage, nach Wechsel der Stage ansprechen AWT, Swing, JavaFX & SWT 32
Lunar Swing JFrame erstellt; weitere Elemente werden nicht eingefügt/sind nicht zu sehen AWT, Swing, JavaFX & SWT 4
J JavaFX JavaFX Splitpane - Zugriff auf die Controller der Elemente AWT, Swing, JavaFX & SWT 8
G Swing Variable Elemente für GroupLayout AWT, Swing, JavaFX & SWT 18
F JFrame zeigt nicht alle Elemente auf anhieb an AWT, Swing, JavaFX & SWT 4
J JavaFX Elemente werden nicht zu TableView hinzugefügt AWT, Swing, JavaFX & SWT 3
J JavaFX JavaFX Elemente an Fenstergröße skalieren AWT, Swing, JavaFX & SWT 5
M Schnittpunkte zwischen zwei Graphics2D Elemente ermitteln. AWT, Swing, JavaFX & SWT 5
T LayoutManager Anordnen der Elemente im GridBagLayout AWT, Swing, JavaFX & SWT 11
T AWT Grafik"Array" einzelne Elemente verschieben AWT, Swing, JavaFX & SWT 1
sandaime Swing 3 JComboBoxen ausgelesen Elemente einzel ausgeben AWT, Swing, JavaFX & SWT 6
M JavaFX GUI-Elemente erstellen, nachdem die GUI geladen hat AWT, Swing, JavaFX & SWT 4
TheJavaKid JavaFX Elemente positionieren AWT, Swing, JavaFX & SWT 2
B Swing Auf JList-Elemente aus einer anderen Klasse zugreifen AWT, Swing, JavaFX & SWT 1
N JavaFX GUI Elemente einer anderen (FXML)Klasse ansprechen AWT, Swing, JavaFX & SWT 16
D JavaFX Elemente aus VBox unterscheiden AWT, Swing, JavaFX & SWT 1
K Kann nicht auf GUI Elemente zugreifen, mit einer Methode im Controller klappts, mit der anderen nich AWT, Swing, JavaFX & SWT 10
R Swing Elemente verschieben sich im GBL beim Ein/Ausblenden AWT, Swing, JavaFX & SWT 0
Z Swing Swing: Elemente werden doppel/verschoben gezeichnet, sind teils unsichtbar etc... AWT, Swing, JavaFX & SWT 10
wolfgang63 JavaFX Elemente einer Group entfernen AWT, Swing, JavaFX & SWT 1
D SWT SWT Elemente aus anderen Klassen aufrufen - Invalid thread access AWT, Swing, JavaFX & SWT 6
O Ähnliche GUI Elemente - vererbung?! AWT, Swing, JavaFX & SWT 0
M AWT Gui anzeige Probes - Elemente erscheinen nicht regelmäßig AWT, Swing, JavaFX & SWT 2
M Swing JTabbedPane: Tab-Elemente anpassen AWT, Swing, JavaFX & SWT 3
T Swing Elemente der JList überlappend darstellen AWT, Swing, JavaFX & SWT 5
K GUI Elemente über eine separate Textdatei beschriften? AWT, Swing, JavaFX & SWT 4
T Alle Swing-Elemente anzeigen AWT, Swing, JavaFX & SWT 9
M Swing Elemente im Dialog neu "laden". AWT, Swing, JavaFX & SWT 6
T JTree - Elemente mit Doppelklick auswählen AWT, Swing, JavaFX & SWT 6
L Swing ActionListener zugriff auf bestimmte Elemente AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen


Oben