LayoutManager BorderLayout WEST Bereich auf maximale Größe beschränken

G

Gast2

Gast
Wie der Titel besagt möchte ich einer Komponente im WEST BEreich die Prefferd Width zugestehen BIS zu einem Maximalwert. Geht das irgendwie einfach?

setMaximumSize bewirkt da nichts.

Alternativ wäre eine Mindestgröße für das CENTER Component toll. setMiniumSize bewirkt da allerdings auch nichts.

Die WEST wird immer so breit wie sie will.

Bin leicht ratlos.
 
C

Camino

Gast
Ist es normalerweise nicht so, dass die Breite des WEST-Bereiches sich an der Breite dessen Inhaltes orientiert und der CENTER-Bereich dann den restlichen Platz einnimmt? Was kommt denn bei dir in WEST rein? Und mit welcher Grösse? Zeig doch mal dein Beispiel, vor allem die Festlegung der Grösse des WEST-Bereiches.
 
G

Gast2

Gast
In meinen West Bereich kommt ein Panel rein, was theoretisch unendlich breit werden kann. Zumindest breiter als der Frame.

Ich möchte dessen Breite daher beschränken. Wenns nicht geht muss ich das anders lösen.

Im Center das gleiche Spiel. Größe unbekannt. Da es aber im Center ist aktivieren sich einfach die Scrollbars.

Das Panel im WEST BEreich soll AB einer maximalgröße dann auch eine hotizontale Scrollbar aktivieren. Diese ist zwar theoretisch da, da das Panel aber immer seine gewünschte Breite bekommt wird sie natürlich nie aktiviert.

Code ist relativ Witzlos, da die Panel Klassen wiederum zusammengesetzt sind ect. Ist eine recht Große GUI die sehr modular ist.

Wie gesagt stellt euch Panels mit ScrollPanes vor. Und der WEST soll in der Breite beschränkt werden.
 
C

Camino

Gast
Im Center das gleiche Spiel. Größe unbekannt. Da es aber im Center ist aktivieren sich einfach die Scrollbars.

Scrollbars? Von ganz alleine und automatisch in CENTER-Bereich??? Vielleicht solltest du für deinen WEST-Bereich eine Scrollpane einfügen und der die gewünschte Grösse geben.
 
G

Gast2

Gast
Scrollbars? Von ganz alleine und automatisch in CENTER-Bereich??? Vielleicht solltest du für deinen WEST-Bereich eine Scrollpane einfügen und der die gewünschte Grösse geben.

Mein CENTER Component ist natürlich eine ScrollPane die dann falls zu wenig Platzd a ist, die Scrollbars anzeigt (AS_NEEDED).

Aber alles hin und her. Ist doch SCh***** egal welches Component im WEST drin ist.

Nochmal die Frage:

Kann ich BorderLayout irgendwie mitteilen, dass die WEST Component nicht breiter werden darf als X?
 
G

Gast2

Gast
Wie gesagt dann muss ich 15 Klassen posten die aus dem Zusammenhang gerissen auch nicht kompiliertbar sind.

Fazit: Es gibt keinen einfachen Weg. Ich machs anders.
 
C

Camino

Gast
Wie schon weiter oben erwähnt, wird der WEST-Bereich so breit, wie die hinzugefügte Komponente. Wenn du da eine Scrollpane mit festgelegter Grösse reintust, dann sollte das eigentlich klappen. Da aber neimand erraten kann, wie du deine Komponenten nach WEST einfügst oder wie die Grössen dort festgelegt sind, wird dir auch niemand einfach so helfen können. Du musst ja nicht alles posten, sondern nur den relevanten Code. Zum Beispiel das BorderLayout, wo du deine Komponente in WEST einfügst...
 

beastofchaos

Bekanntes Mitglied
Richtig! :D

Aber noch etwas, wenn es da iwie nicht funktioniert und bevor es weiter das Problem gibt, frag das doch immer ab, wenn die Größe geändert wird.
Code:
Math.min(newSize.width, maximaleBreite);

Das kannst du entweder per Listener iwo machen, keine Ahnung, was du veränderst, oder du nimmst halt dieses Panel, was in West liegt und machst daraus einfach ne KindKlasse von JPanel und änderst setSize() ab. Das sieht dann so aus.

Java:
final int maxWidth = 30;
JPanel parent = new JPanel(new BorderLayout());

JPanel westPanel = new JPanel(){
    @Override
    public void setPreferredSize(Dimension d){
        super.setPreferredSize(new Dimension(Math.min(d.width, maxWidth), d.height));
    }
};

parent.add(westPanel, BorderLayout.WEST);

So kann man es sich vorstellen oder du versuchst es, wie die andren vorschlagen, auf die leichte Tour:

Java:
final int maxWidth = 30;
JPanel parent = new JPanel(new BorderLayout());

JPanel westPanel = new JPanel();
westPanel.setMaximumSize(new Dimension(maxWidth, 0));

parent.add(westPanel, BorderLayout.WEST);

Hoffe, ich konnte helfen
Gruß, Thomas
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R BorderLayout: EAST, CENTER, WEST AWT, Swing, JavaFX & SWT 5
S [BorderLayout]WEST/EAST sollen über ganze Höhe gehen; AWT, Swing, JavaFX & SWT 3
B BorderLayout.WEST (JTree strecken in Höhe) AWT, Swing, JavaFX & SWT 2
K JavaFX Resizing-Problem beim BorderLayout (Center Component) beim Arbeiten mit mehreren FXMLs AWT, Swing, JavaFX & SWT 2
L BorderLayout in BorderLayout verknüpfen AWT, Swing, JavaFX & SWT 2
M Bewegtes Bild im BorderLayout.CENTER AWT, Swing, JavaFX & SWT 6
F BorderLayout Hilfe bei Anzeige AWT, Swing, JavaFX & SWT 2
B AWT Panel größe im BorderLayout einstellen AWT, Swing, JavaFX & SWT 1
C Swing Borderlayout im JFrame AWT, Swing, JavaFX & SWT 4
C Swing Geschachteltes GUI mit BorderLayout - Vertikal & horizontal Verschieben AWT, Swing, JavaFX & SWT 1
P AWT BorderLayout AWT, Swing, JavaFX & SWT 2
A BorderLayout "Center" Inhalt wechseln AWT, Swing, JavaFX & SWT 1
S Swing [CLOSED] NullPointerException bei BorderLayout() AWT, Swing, JavaFX & SWT 8
S JScrollPane und BorderLayout AWT, Swing, JavaFX & SWT 1
B Swing Borderlayout East über North AWT, Swing, JavaFX & SWT 5
Q JFrame/BorderLayout AWT, Swing, JavaFX & SWT 3
A LayoutManager Höhe von NORTH beim BorderLayout ändern AWT, Swing, JavaFX & SWT 4
bluerob Panel im BorderLayout South wird nicht angezeigt AWT, Swing, JavaFX & SWT 5
M BorderLayout JPanel liegt nicht richtig an AWT, Swing, JavaFX & SWT 12
R BorderLayout AWT, Swing, JavaFX & SWT 4
C LayoutManager BorderLayout im richtigen Format beschriften AWT, Swing, JavaFX & SWT 10
C CardLayout in BorderLayout? AWT, Swing, JavaFX & SWT 36
S Problem mit BorderLayout NORTH und SOUTH AWT, Swing, JavaFX & SWT 2
T Borderlayout Ecken AWT, Swing, JavaFX & SWT 2
H Swing JInternalFrame, JDesktopPane und ein BorderLayout AWT, Swing, JavaFX & SWT 2
R Problem mit Box bzw BorderLayout AWT, Swing, JavaFX & SWT 6
P LayoutManager BorderLayout - Zweimal Norden ? AWT, Swing, JavaFX & SWT 4
E LayoutManager GridBagLayout in BorderLayout - Abstand bei Resizing AWT, Swing, JavaFX & SWT 2
2 AWT Borderlayout: Grafikelemente ein und ausblenden AWT, Swing, JavaFX & SWT 2
J LayoutManager BorderLayout - 2 Buttons in SOUTH nebeneinander platzieren? AWT, Swing, JavaFX & SWT 3
N JPanel vertikal im BorderLayout zentrieren AWT, Swing, JavaFX & SWT 2
S Anordnen von Buttons im BorderLayout AWT, Swing, JavaFX & SWT 6
F Im BorderLayout eine feste Grösse zuweisen! AWT, Swing, JavaFX & SWT 9
S JSplitpane in BorderLayout nutzen AWT, Swing, JavaFX & SWT 4
K LayoutManager Borderlayout - NORTH aktualisieren AWT, Swing, JavaFX & SWT 10
B Swing BorderLayout und JPanel AWT, Swing, JavaFX & SWT 3
A GUI Komponenten in Borderlayout zeichnen AWT, Swing, JavaFX & SWT 3
B BorderLayout AWT, Swing, JavaFX & SWT 8
S Swing BorderLayout + Backgroundcolor AWT, Swing, JavaFX & SWT 3
0din Austausch von JPanel in BorderLayout AWT, Swing, JavaFX & SWT 3
X Instanzieren und Zuweisen vom BorderLayout an Container nicht notwendig ? AWT, Swing, JavaFX & SWT 4
E AWT Formatierung in BorderLayout AWT, Swing, JavaFX & SWT 10
D Resizeverhalten BorderLayout AWT, Swing, JavaFX & SWT 3
calzone Swing und BorderLayout AWT, Swing, JavaFX & SWT 11
Strahlungsleck Problem mit dem Anzeigen von Elementen im BorderLayout AWT, Swing, JavaFX & SWT 6
R LayoutManager ähnlich BorderLayout, mit einer Ausnahme AWT, Swing, JavaFX & SWT 2
D BorderLayout.Center mit 3 Panel und dynamischer Größe AWT, Swing, JavaFX & SWT 2
P Probleme bei BorderLayout im JPanel AWT, Swing, JavaFX & SWT 7
G Komponente oben positionieren (BorderLayout) AWT, Swing, JavaFX & SWT 3
G BorderLayout - zentrieren AWT, Swing, JavaFX & SWT 1
A BorderLayout Verhältnis festlegen? AWT, Swing, JavaFX & SWT 5
F Farbe für den Hintergrund eine BorderLayout-Teils AWT, Swing, JavaFX & SWT 5
O Probleme bei BorderLayout AWT, Swing, JavaFX & SWT 5
H Bei BorderLayout SOUTH minimieren AWT, Swing, JavaFX & SWT 3
DeeDee0815 Abstand ZUM BorderLayout AWT, Swing, JavaFX & SWT 13
K BorderLayout--> feste Größe AWT, Swing, JavaFX & SWT 2
D BorderLayout + Buttongröße ändern AWT, Swing, JavaFX & SWT 4
P JPanel im BorderLayout feste Größe/Position zuordnen AWT, Swing, JavaFX & SWT 3
L Alle Inhalte in BorderLayout.CENTER löschen? AWT, Swing, JavaFX & SWT 2
M Layout Problem (GrudBag- + BorderLayout) AWT, Swing, JavaFX & SWT 6
O GridBag IN BorderLayout? AWT, Swing, JavaFX & SWT 5
J BorderLayout / 1 Panel in Mitte und 1 Panel im Osten anordne AWT, Swing, JavaFX & SWT 6
F FlowLayout in BorderLayout AWT, Swing, JavaFX & SWT 4
D BorderLayout mit JTextField AWT, Swing, JavaFX & SWT 7
B BorderLayout/JSplitPane Problem beim Ausrichten AWT, Swing, JavaFX & SWT 5
F Anordnung im BorderLayout AWT, Swing, JavaFX & SWT 6
S Toolbar in einem BorderLayout verschieben AWT, Swing, JavaFX & SWT 4
M FlowLayout in BorderLayout einbinden? AWT, Swing, JavaFX & SWT 6
J Ermittlung der Ausrichtung einer Komponente im BorderLayout AWT, Swing, JavaFX & SWT 3
M AWT borderLayout AWT, Swing, JavaFX & SWT 7
R dummes BorderLayout :( AWT, Swing, JavaFX & SWT 8
H BorderLayout.setBackground AWT, Swing, JavaFX & SWT 2
J paint(Graphics g) im BorderLayout einem JPanel zuordnen &amp AWT, Swing, JavaFX & SWT 19
C Borderlayout und Checkboxgruppen AWT, Swing, JavaFX & SWT 3
frau-u Borderlayout - zusätzliche Zeile AWT, Swing, JavaFX & SWT 4
W Probleme mit BorderLayout AWT, Swing, JavaFX & SWT 2
M ScreenCapture bestimmten Bereich bestimmen AWT, Swing, JavaFX & SWT 3
B JavaFX Bilder in einem Gewissen bereich halten AWT, Swing, JavaFX & SWT 1
S JavaFX Fenster aufkommen lassen, wenn mit der Maus über bestimmten Bereich fahren AWT, Swing, JavaFX & SWT 1
D Java FX Image in einer Webanwendung annotieren und den Bereich ausschneiden AWT, Swing, JavaFX & SWT 0
J bestimmten Bereich eines JPanels drucken AWT, Swing, JavaFX & SWT 2
E JavaFX MenuBar und ToolBar zu einem Bereich AWT, Swing, JavaFX & SWT 3
S Swing Nur den sichtbaren Bereich eines TextPane mit Inhalt darstellem AWT, Swing, JavaFX & SWT 0
W Sichtbarer Bereich JScrollPane vs. JList AWT, Swing, JavaFX & SWT 3
S Bestimmten Bereich eines Bildes im JFrame mit Scrollpane anzeigen AWT, Swing, JavaFX & SWT 0
B 2D-Grafik String drehen/platzieren/formatieren in bestimmten Bereich AWT, Swing, JavaFX & SWT 1
K JavaFX Vorschau Bereich/Fenster einer bestehenden Group AWT, Swing, JavaFX & SWT 3
D Graphics2D einen Bereich füllen AWT, Swing, JavaFX & SWT 1
A JFreeChart BarChart invertierte anzeige oder werte bereich von-bis AWT, Swing, JavaFX & SWT 4
B 2D-Grafik paintComponent für rechteckigen Bereich? AWT, Swing, JavaFX & SWT 6
fastjack 2D-Grafik Scrollbarer Bereich AWT, Swing, JavaFX & SWT 4
S Bestimmen ob Bereich im Bild eher Schwarz oder Weiss ist? AWT, Swing, JavaFX & SWT 13
D JTabbedPane - Farbe ändern im Bereich hinter den Reitern AWT, Swing, JavaFX & SWT 2
R JTable nur sichtbaren Bereich laden AWT, Swing, JavaFX & SWT 12
L Koordinate im sichtbaren Bereich AWT, Swing, JavaFX & SWT 5
R JPanel - zeichnen in skalierten Bereich - Linie (X-Achse) nicht sichtbar AWT, Swing, JavaFX & SWT 11
R Swing JPanel Scala - sichtbarer Bereich "schattieren" AWT, Swing, JavaFX & SWT 2
G Komponente die im Center und North Bereich liegt zurückgebe? AWT, Swing, JavaFX & SWT 6
S Aufklappbarer Bereich AWT, Swing, JavaFX & SWT 2
V Fixer Bereich bei JScrollPane? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben