Hi.
Ich möchte ein besonders schickes Layout machen. Der Aufbau sieht so aus:
Ich habe dafür ein GridBagLayout verwendet. Das Problem dabei ist, Dass JScrollPane kein richtiges PreferredSize liefert, da die Componente innerhalb ja größer oder kleiner sein kann. Ziel ist es, dass die beiden Panel oben und links fest stehen und sich das JScrollPane an den beiden und der komplett Fenstergröße anpasst. Würde man manuell die PreferredSize des JScrollPane setzen und dann das Fenster kleiner ziehen, so dass das Pane nicht mehr rein passt, dann fällt es immer zusammen, so dass nur noch die ScrollBar zu sehen ist.
Durch Interaktion des Users kann sich die Breite des linken Panels ändern (es zeigt Informationen und Optionen zum Inhalt des JScrollPanes an).
Momentan sieht der Code wie folgt aus:
Weiß jemand, wie man das umsetzen kann?
Grüße,
Thomy
Ich möchte ein besonders schickes Layout machen. Der Aufbau sieht so aus:
Code:
|--------------------------------------------|
| Menüleiste (Panel) - statisch |
| . . . . . .________________________________|
| dynam- | |
| isches | JscrollPane, |
| Panel, | dynamisch |
| was | füllt den Rest |
| seine | aus |
| breite | |
| ändern | |
| kann | |
----------------------------------------------
Durch Interaktion des Users kann sich die Breite des linken Panels ändern (es zeigt Informationen und Optionen zum Inhalt des JScrollPanes an).
Momentan sieht der Code wie folgt aus:
Java:
GridBagLayout gbl=new GridBagLayout();
setLayout(gbl);
GridBagConstraints gbc=new GridBagConstraints();
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.insets = new Insets(2,2,2,2);
gbc.gridx = 0;
gbc.gridy = 0;
gbc.gridheight = 2;
Options left = new Options(); //extends JPanel
gbl.setConstraints(left, gbc);
add(left);
gbc.gridx=1;
gbc.gridy=0;
gbc.gridheight = 1;
Menu m=new Menu(imgl); //extends JPanel
gbl.setConstraints(m, gbc);
add(m);
gbc.gridx=1;
gbc.gridy=1;
gbc.gridheight = 1;
StaffPanel staffpane=new StaffPanel(s,imgl,left); //extends JPanel
JScrollPane pane=new JScrollPane(staffpane);
staffpane.setScrollPane(pane);
gbl.setConstraints(pane, gbc);
add(pane);
Grüße,
Thomy
Zuletzt bearbeitet: