Layout im Nachhinein ändern

T

Tomate_Salat

Gast
Tja, da benutzt man die meiste Zeit den GUI-Editor von Netbeans und nun rächt es sich...

Ich habe folgendes Problem:

Ich habe einen leeren JPanel auf dem ich ein AccordionMenü aufbauen will. Als LayoutManager will ich das GridBagLayout nehmen und bisher funktioniert alles im Prinzip wie ich es gerne hätte, bis auf eine Sache: meine Componenten werden in der Mitte und nicht im Norden (oder PAGE_START) aufgebaut. Ich nehme mal an das JPanel hat falsche Einstellungen, da ich das Layout im nachhinein verändere. (Was auch so bleiben soll!)

ich suche schon ewig nach einer Lösung, komme aber auf keinen grünen zweig...ich poste mal den funktionsabschnitt, in dem ich das JPanel verändere:

[java=16]
// Layout festlegen
GridBagLayout gbl = new GridBagLayout();

frame.setLayout(gbl);

GridBagConstraints c = new GridBagConstraints();
c.anchor = GridBagConstraints.NORTH;
c.fill = GridBagConstraints.HORIZONTAL;
c.weightx = 1.0;
c.weighty = 1.0;
c.gridy = 0;
c.gridx = 0;
c.ipady = 0;

gbl.setConstraints(frame, c);
[/code]

MFG

Tomate_Salat
 

Tobias

Top Contributor
Was heißt denn "weil ich das Layout im Nachhinein verändere"? Welches Layout hat es denn vorher? Und ist es schon sichtbar, wenn du das Layout veränderst? Wenn ja - Da sehe ich enorme Probleme. Wenn nein - Warum dann das Layout ändern?
 
T

Tomate_Salat

Gast
jup, ist sichtbar (hab es testweise grün eingefärbt und die fläche stimmt mit der vorher definierten fläche überein).

Vorher hatte es das Layout welches Netbeans standartmäßig vergibt

€: Auch wenn ich ein GB-Layout standartmäßig einstelle, so ist es mir nicht wirklich möglich die Componenten im Norden beginnend an zu positiontioneren:
[java=40]
GridBagConstraints bc = new GridBagConstraints();
bc.anchor = GridBagConstraints.NORTH;
bc.fill = GridBagConstraints.HORIZONTAL;
bc.gridx = 0;
bc.gridy = ROWS++;
bc.gridheight = 1;
bc.weightx = 1.0;

JToggleButton button = new JToggleButton(title);

GridBagConstraints pc = new GridBagConstraints();
pc.anchor = GridBagConstraints.NORTH;
pc.fill = GridBagConstraints.HORIZONTAL;
pc.gridx = 0;
pc.gridy = ROWS++;
pc.gridheight = 1;
pc.weightx = 1.0;

JPanel fill = new JPanel();
fill.setBackground(Color.red);

FRAME.add(button, bc); // FRAME = das JPanel was oben beschrieben ist
FRAME.add(fill, pc);
[/code]
 
Zuletzt bearbeitet von einem Moderator:
T

Tomate_Salat

Gast
Ok ich habe eine Möglichkeit gefunden, meine Objekte in den Norden zu verschieben....und verschieben ist genau das Schlagwort. Ich habe einfach ein JPanel darunter gesetzt dass den restlichen Platz nutzt. Die Lösung gefällt mir nicht wirklich aber besser als das vorherige, wenn iwer noch eine Idee hat, bitte Posten ;-) Danke
 

eso

Mitglied
Ich mache das so: es wird eine Art "Spacer" - Componente (z.B.: JLabel) angefügt. Dieser bekommt folgende constraints:
constraints.gridwidth= GridBagConstraints.REMAINDER;
constraints.weightx = 1;
bzw. für den vertikalen Spacer
constraints.gridheight= GridBagConstraints.REMAINDER;
constraints.weighty = 1;

Dadurch sollten die davor angefügten Componenten sich links-oben befinden.
 
T

Tomate_Salat

Gast
ungefähr exakt so habe ichs gemacht :), aber meines wissens nach sollte man trotzdem iwie fest angeben können wo das ganze liegt....
 

L-ectron-X

Gesperrter Benutzer
Kannst du mal ein Bildschirmfoto von der aktuellen Situation machen, damit man sich etwas vorstellen kann?
Für die Ausrichtung von Komponenten im GridBagLayout sind maßgeblich die GridBagConstarints-Komponente weightx, weighty, fill und anchor wichtig.
In der FAQ findest du auch einen Beitrag zum GBL.
 
T

Tomate_Salat

Gast
hab mir mal das in der FAQ angeschaut und das anchor macht genau das was ich befürchtet hatte :-/ . Ich stelle das Thema mal zurück, weil ich mir garnicht mehr sicher bin, ob meine geplante GUI-Umsetzung in Realität praktisch ist. Sobald es zu viel drauf kommt, wird das einfach nur noch hässlich :-( . Habe noch was anderes hier zu Programmieren und danach werde ich mich nochmal der Sache zuwenden und mir überlegen, wie ich es letztendlich realisiere.
Ich denke den einfachsten weg in dem Falle habe ich ja hinbekommen, indem ich einfach einen unsichtbaren Spacer unter die ganze Geschichte platziert habe. Aber danke für eure Hilfe ;-)
 

L-ectron-X

Gesperrter Benutzer
Man kann Layouts auch schachteln (normalerweise üblich), um GUIs zu gestalten.
Du hast leider kein Bildschirmfoto gepostet, zu dem man Lösungsvorschläge hätte bringen können.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Welches Java Layout sollte ich verwenden? AWT, Swing, JavaFX & SWT 3
S Layout - Problem AWT, Swing, JavaFX & SWT 1
D Layout einer scene mit ListView Elementen und Zwei Textfeldern AWT, Swing, JavaFX & SWT 1
H Swing , GridLayout, Größenbestimmung der Komponenten im Layout AWT, Swing, JavaFX & SWT 8
melaniemueller Layout wechseln über RadioButtons AWT, Swing, JavaFX & SWT 4
E LayoutManager Welcher Layout-Mix löst mein Problem? AWT, Swing, JavaFX & SWT 3
J Swing Hilfe bei Layout AWT, Swing, JavaFX & SWT 2
R Layered Layout AWT, Swing, JavaFX & SWT 1
E showAndWait is not allowed during animation or layout processing Memory FX AWT, Swing, JavaFX & SWT 2
newJavaGeek Grid-Layout problem AWT, Swing, JavaFX & SWT 7
E Swing Layout während der Laufzeit anpassen AWT, Swing, JavaFX & SWT 3
P JavaFX Zugriff auf Fenster/Layout-Container in eigenen Klassen AWT, Swing, JavaFX & SWT 5
R Layout Manager null und Component wird nicht hinzugefügt AWT, Swing, JavaFX & SWT 3
S Kann javafx.scene.layout.VBoxBuilder nicht importieren AWT, Swing, JavaFX & SWT 3
OSchriever Layout über Radiobuttons ändern AWT, Swing, JavaFX & SWT 4
B Swing Probleme mit dem Layout AWT, Swing, JavaFX & SWT 1
Hatsi09 JButton text layout AWT, Swing, JavaFX & SWT 9
I JavaFX - festes Layout AWT, Swing, JavaFX & SWT 1
S JavaFX TableView einzelne Zelle Layout zuweisen AWT, Swing, JavaFX & SWT 3
DaCrazyJavaExpert Swing Zwei gleichgroße Panels in einem Scrollpane mit Layout AWT, Swing, JavaFX & SWT 9
Neumi5694 Swing Card-Layout, Fokus AWT, Swing, JavaFX & SWT 2
kilopack15 Interface mit Layout verknüpfen AWT, Swing, JavaFX & SWT 2
Y Layout/Ausrichtungsprobleme AWT, Swing, JavaFX & SWT 4
T JavaFX Custom Layout AWT, Swing, JavaFX & SWT 5
A GUI Layout AWT, Swing, JavaFX & SWT 11
A Layout-Manager, JScrollPane, ... Chaos AWT, Swing, JavaFX & SWT 5
L wie Layout-Grid in JXPanel anzeigen? AWT, Swing, JavaFX & SWT 5
L Eigene Component Layout AWT, Swing, JavaFX & SWT 4
Soloeco LayoutManager Wie und welches Layout nutze ich am Besten? AWT, Swing, JavaFX & SWT 13
M LayoutManager Modalen JDialog ein Layout zuweisen AWT, Swing, JavaFX & SWT 3
M LayoutManager Layout reagiert nicht auf Constraints AWT, Swing, JavaFX & SWT 4
IsSchoGuat LayoutManager Layout-Containergrösse AWT, Swing, JavaFX & SWT 4
F GridBag Layout AWT, Swing, JavaFX & SWT 1
Z Absolutes Layout / Kontrolle über Anordnung AWT, Swing, JavaFX & SWT 3
M Mehrere Jpanel in einem JScrollPane (Layout) AWT, Swing, JavaFX & SWT 2
M Layout-Probleme unter Swing AWT, Swing, JavaFX & SWT 5
D LayoutManager GUI skalieren und deren Komponenten mit Grid(Bag)Layout-Manager. AWT, Swing, JavaFX & SWT 5
J ComboBoxModel addElement verändert Layout AWT, Swing, JavaFX & SWT 8
E Probelm mit Layout AWT, Swing, JavaFX & SWT 1
B Hilfe welches Layout brauch ich AWT, Swing, JavaFX & SWT 4
P Tipps für GUI-Layout AWT, Swing, JavaFX & SWT 2
M Passender Layout-Manager AWT, Swing, JavaFX & SWT 3
M LayoutManager Layout zur Laufzeit ändern AWT, Swing, JavaFX & SWT 8
N Swing Zweifarbiges Layout für den Filechooser AWT, Swing, JavaFX & SWT 12
B LayoutManager Card Layout AWT, Swing, JavaFX & SWT 2
E Angehängtes Layout, aber wie? AWT, Swing, JavaFX & SWT 12
1 Eigenes Layout schreiben AWT, Swing, JavaFX & SWT 4
B SWT layout invalidieren in SWT? AWT, Swing, JavaFX & SWT 4
R Welchen Layout Manager/ Wie strukturieren? AWT, Swing, JavaFX & SWT 14
J Layout: oben 20% unten 80% AWT, Swing, JavaFX & SWT 12
T Layout für Listendarstellung AWT, Swing, JavaFX & SWT 3
F LayoutManager Null-Layout unter Linux im TreeCellEditor AWT, Swing, JavaFX & SWT 3
K Eclipse Layout (Gimp Layout, Tiled Layout...) AWT, Swing, JavaFX & SWT 4
C LayoutManager Passendes Layout gesucht AWT, Swing, JavaFX & SWT 2
M Layout funktioniert nicht AWT, Swing, JavaFX & SWT 3
dzim Layout von Panes in JFX2 AWT, Swing, JavaFX & SWT 17
H Layout Idee AWT, Swing, JavaFX & SWT 8
M Swing Dynamisches Layout AWT, Swing, JavaFX & SWT 10
P Swing welchen Layout Manager verwenden AWT, Swing, JavaFX & SWT 9
J LayoutManager Komponentenaustausch zerschießt Layout AWT, Swing, JavaFX & SWT 4
F Layout-Problem AWT, Swing, JavaFX & SWT 2
K Gui Layout Frage AWT, Swing, JavaFX & SWT 5
B Anderen Layout-Manager verwenden AWT, Swing, JavaFX & SWT 17
E Null-Layout - Wie geht es ohne? AWT, Swing, JavaFX & SWT 19
Furtano AWT mehrere Bilder in einen Frame zeichnen + Layout Manager AWT, Swing, JavaFX & SWT 10
L Swing dynamisches Image-Panel in Layout einbinden AWT, Swing, JavaFX & SWT 10
D Bild in JPanel verschiebt Layout. Wie fixieren? AWT, Swing, JavaFX & SWT 9
GUI-Programmer Wieder ne Layout Frage AWT, Swing, JavaFX & SWT 11
GUI-Programmer LayoutManager Kurze Layout Frage - eine komponente mittig? AWT, Swing, JavaFX & SWT 5
D Problem mit 3-Spalten Layout AWT, Swing, JavaFX & SWT 17
ARadauer Wenig Material zum Thema: Design, Layout, Usability von Swing Anwendungen AWT, Swing, JavaFX & SWT 11
S LayoutManager Welcher LayoutManager für dieses zweispaltige Layout? AWT, Swing, JavaFX & SWT 13
G LayoutManager Layout welches von Links nach rechts anordnet mit TOP Alignment! AWT, Swing, JavaFX & SWT 5
A Best practice für konkretes Layout AWT, Swing, JavaFX & SWT 10
G LayoutManager Layout für Spalten AWT, Swing, JavaFX & SWT 8
A Layout/JPanelgröße AWT, Swing, JavaFX & SWT 6
S pack() bei null-Layout AWT, Swing, JavaFX & SWT 10
C SWT Tabellen-Layout in StyledText? AWT, Swing, JavaFX & SWT 6
J LayoutManager Welchen Layout/Design-Manager? AWT, Swing, JavaFX & SWT 4
R Swing Layout setzen AWT, Swing, JavaFX & SWT 3
L Layout automatische Anpassung umgehen? AWT, Swing, JavaFX & SWT 5
A Problem mit Layout-Manager AWT, Swing, JavaFX & SWT 11
J Button Layout anpassen AWT, Swing, JavaFX & SWT 22
H LayoutManager Layout mit GridBagLayout machbar? AWT, Swing, JavaFX & SWT 6
B Buttongröße im Layout AWT, Swing, JavaFX & SWT 4
B LayoutManager Layout Problem AWT, Swing, JavaFX & SWT 14
O LayoutManager Layout entwerfen AWT, Swing, JavaFX & SWT 3
A diverse Layout-Fragen AWT, Swing, JavaFX & SWT 4
F LayoutManager Eigenes Layout die Lösung?! AWT, Swing, JavaFX & SWT 4
dzim SWT Layout mit Sections aus Eclipse Forms AWT, Swing, JavaFX & SWT 17
F JScrollPane verwirft Layout von JPanel AWT, Swing, JavaFX & SWT 2
C LayoutManager Layout und vergrößern des Frames AWT, Swing, JavaFX & SWT 5
E Swing Runde Buttons / Position eines Obj. im Layout AWT, Swing, JavaFX & SWT 7
S Swing UI-Elemente ordnen sich ungewollt in einer Reihe (ohne Layout) AWT, Swing, JavaFX & SWT 5
A Ungewollte Layout änderungen AWT, Swing, JavaFX & SWT 3
A Suche: Eclipse-GUI-Layout AWT, Swing, JavaFX & SWT 5
E JPanel mit Null Layout entfernt Buttons AWT, Swing, JavaFX & SWT 11
N Swing Layout positionieren AWT, Swing, JavaFX & SWT 2
B Methode setzt nicht das Layout in einer if-Abfrage AWT, Swing, JavaFX & SWT 13
H LayoutManager Dynamisches Layout AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben