LayoutManager Im Haupframe veränderbare Frames

Mino1337

Mitglied
Hallo,

das Letzte Thema war zwar auch schon von mir aber die überschrift passt nichtmehr zu der jetzigen Problematik.
Ich habe nun einen Hauptframe (JFrame) der einen GridBagLayout Layoutmanager beinhaltet. Der Layoutmanager unterteilt den Hauptframe in ein unteren und oberen Balken der durchgängig ist und in der Mitte zwei Balken welche den mittleren bereich in zwei gleich große hälften unterteilt.
Nun möchte ich das die rechte mittlere hälfte in ihrer Breite veränderbar ist. Man kennt es ja man geht mit der Maus auf die Kante zwischen zwei Balken, die Maus wird zu einem Pfeilsymbol und man kann klickennd und ziehennd das Fenster in der breite einstellen.

Ich hab schon überlegt einen JFrame anstatt ein JPanel einzubauen aber dann hätte ich auch wieder in meinem Frame einen Frame der ein kreuz und die anderen Symbole hat. Das will ich so nicht.

Wahlweise könnte ich auch einen Button positionieren mit dem man den Balken zuschalten kann aber das weiss ich wie es geht.

Hier mein Code:

Java:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Toolkit;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Hauptframe {
   
   
    GridBagLayout Layout;
    GridBagConstraints cons;
    JFrame f = new JFrame("Sammelfuchs");
   
    JPanel a = new JPanel();
    JPanel b = new JPanel();
    JPanel c = new JPanel();
    JPanel d = new JPanel();
    JPanel e = new JPanel();

   
    public Hauptframe(){
       
        Layout = new GridBagLayout();
       
        a.setBackground(Color.red);
        b.setBackground(Color.green);
        c.setBackground(Color.yellow);
        d.setBackground(Color.white);
        e.setBackground(Color.blue);
       
        f.setPreferredSize(new Dimension(1000, 1000));
        f.setMaximumSize(new Dimension(1000, 1000));
        f.setMinimumSize(new Dimension(600, 600));
        f.setVisible(true);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setLayout(Layout);
        Toolkit.getDefaultToolkit().setDynamicLayout(true);
       
        layerdim(a,0,0,2,1,1,20,1.0,0.0,3);
        layerdim(b,0,1,1,1,1,0,5.0,7.0,3);
        layerdim(c,1,1,1,1,1,0,5.0,7.0,3);
        layerdim(d,0,2,2,1,1,10,1.0,0.0,3);
   
    }
   
    private void layerdim(JPanel a,int gridx, int gridy, int gridwith, int gridheight,int ipadx,int ipady, double weightx, double weighty, int s){
        cons = new GridBagConstraints();     //Bereinigung der Constrains (Alles auf Null setzen weil neu)
        cons.gridx = gridx;                 //In welcher Spalte startet das Objekt
        cons.gridy = gridy;                 //in welcher Zeile endet das Objekt
        cons.gridwidth = gridwith;             //Wieviele Spalten nimmt das Objekt ein
        cons.gridheight = gridheight;         //Wieviele Zeilen nimmt das Objekt ein
        cons.ipadx = ipadx;                 //Wie Breit ist das Objekt Mindestens
        cons.ipady = ipady;                 //Wie Hoch ist das Objekt Mindestens
        cons.weightx = weightx;             //Prozentualer Wert der Breite
        cons.weighty = weighty;             //Prozentualer Wert der Höhe
        if(s==0){
            cons.fill = GridBagConstraints.NONE;        //Das Objekt wird nur so gross in seinen Bereich angezeigt wie es ist
        }else if(s==1){
            cons.fill = GridBagConstraints.HORIZONTAL;    //Das Objekt füllt den gesammten Raum Horizontal
        }else if(s==2){
            cons.fill = GridBagConstraints.VERTICAL;    //Das Objekt füllt den gesammten Raum Vertikal
        }else if(s==3){
            cons.fill = GridBagConstraints.BOTH;        //Das Objekt füllt den gesammten Raum Horizontal und Vertikal
        }
        Layout.setConstraints(a,cons);                    //Das Objekt wird mit seinen Spezifikationen an das Layout übergeben
        f.add(a);                                        //Das Objekt wird in den Frame eingetragen
    }
   
   

}

Die Main ist in einer eigenen Klasse und die obere Methode initialisiert den Frame samt inhalt. Die zweite Methode ist eine reine Hilfsmethode um den layoutmanager zu sagen was er zu tun hat.

Vielen Dank für eure Hilfe
 

Mino1337

Mitglied
Jupp ganz genau dass =D ... gibt es eigentlich ne vernünftige Dokumentation aller Swing Objekte ? Also mit Bild und beschreibung ? Die von Rheinwerk Computing ist etwas unübersichtlich und ich denke auch unvollständig ...

Dankeschön =D
 

Mino1337

Mitglied
Öhm Danke. Allerdings ging es mir mehr um die Bilder damit man sich etwas darunter vorstellen kann und weiss was es so gibt =D ...
Mittlerweile habe ich allerdings ne ganz gute übersicht erhalten =)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
temi JavaFX "Frames" in JavaFx - passende Komponente? AWT, Swing, JavaFX & SWT 13
M Problem mit dem Anzeigen von Frames im Vordergrund AWT, Swing, JavaFX & SWT 5
M Internal Frames und Canvas-Element AWT, Swing, JavaFX & SWT 9
H Kombination von zwei Frames AWT, Swing, JavaFX & SWT 16
D Frame beim starten eines anderen Frames schließen AWT, Swing, JavaFX & SWT 2
M Swing JPanel innerhalb eines Frames verschieben AWT, Swing, JavaFX & SWT 3
R TriangleMesh verschwindet teilweise beim resizen des Frames, sowie beim rotieren? AWT, Swing, JavaFX & SWT 1
S Größe der Komponenten, beim ändern der größe des Frames, mit ändern! AWT, Swing, JavaFX & SWT 2
A Swing Frames richtig erstellen AWT, Swing, JavaFX & SWT 3
OnDemand Inhalt des Frames ändern AWT, Swing, JavaFX & SWT 4
V Ende eines Frames abwarten AWT, Swing, JavaFX & SWT 7
R Komponenten werden erst nach maximierung des Frames sichtbar (Linux) AWT, Swing, JavaFX & SWT 5
C 2 Frames, eins nicht editierbar AWT, Swing, JavaFX & SWT 2
P 2D-Grafik Gezielter Repaint einzelner Frames in Java-Game AWT, Swing, JavaFX & SWT 6
M Anzahl Frames in Taskleiste AWT, Swing, JavaFX & SWT 2
R Swing Wie kann man Internal Frames automatisch ausrichten lassen? AWT, Swing, JavaFX & SWT 3
J Swing neuer Aufbau des Frames nach Click AWT, Swing, JavaFX & SWT 8
F Swing Ladebildschirm zwischen zwei SWING Frames AWT, Swing, JavaFX & SWT 11
Jackii 2 Frames nacheinander aufrufen AWT, Swing, JavaFX & SWT 6
K Hintergrundfarbe des Frames ändern AWT, Swing, JavaFX & SWT 4
F Canvas Objekt außerhalb des Frames zeichnen AWT, Swing, JavaFX & SWT 3
S GUI mit website-like Frames AWT, Swing, JavaFX & SWT 9
K Tranzparenz von Frames -> IllegalAccessError AWT, Swing, JavaFX & SWT 4
H Swing Wechsel zwischen Frames AWT, Swing, JavaFX & SWT 6
B Problem bei der Aktualisierung des Frames AWT, Swing, JavaFX & SWT 6
A Grösse des Frames stimmt nicht von Anfang an AWT, Swing, JavaFX & SWT 6
Crashbreaker SWT Frames wie bei Eclipse AWT, Swing, JavaFX & SWT 43
G Components erscheinen erst bei Änderung des Frames AWT, Swing, JavaFX & SWT 3
C LayoutManager Layout und vergrößern des Frames AWT, Swing, JavaFX & SWT 5
F Variablen zwischen Frames AWT, Swing, JavaFX & SWT 5
N Mehrere Frames AWT, Swing, JavaFX & SWT 2
M Swing Rahmengröße des Frames/Dialogs AWT, Swing, JavaFX & SWT 3
H Mit for-schleife die Componenten eines Frames verändern AWT, Swing, JavaFX & SWT 5
A Einschreiten vor anzeige eines Frames AWT, Swing, JavaFX & SWT 26
E 2 Frames - eine Änderung AWT, Swing, JavaFX & SWT 4
S Panel austauschen, ohne Größenänderung des Frames AWT, Swing, JavaFX & SWT 5
R Swing alle Frames nutzen das gleiche Model AWT, Swing, JavaFX & SWT 2
S Frames schließen AWT, Swing, JavaFX & SWT 6
E Eine Seite eines Frames variabel anpassen lassen? AWT, Swing, JavaFX & SWT 10
P ScrollPane klappt zusammen beim verkleinern des Frames AWT, Swing, JavaFX & SWT 2
A Oberfläche wir mit html-Frames aufbauen AWT, Swing, JavaFX & SWT 11
D Frames positionieren (java.awt.Frame) AWT, Swing, JavaFX & SWT 3
G Bessere Aktualisierung eines Frames AWT, Swing, JavaFX & SWT 5
D 2 verschiedene Frames mit einem Button schliessen AWT, Swing, JavaFX & SWT 2
A Eins von zwei offnen Fenster/Frames schließen AWT, Swing, JavaFX & SWT 2
M Mehrere Frames - hab ich das richtig verstanden AWT, Swing, JavaFX & SWT 4
R Frames mittig AWT, Swing, JavaFX & SWT 6
H Frames oder Panels für mehrere Ansichten? AWT, Swing, JavaFX & SWT 4
P User-Rechte fuer Frames ueberpruefen und deren Schliessung AWT, Swing, JavaFX & SWT 4
G Frames vorladen lassen AWT, Swing, JavaFX & SWT 8
conan2 Nicht-rechteckige Frames AWT, Swing, JavaFX & SWT 7
F gibt etwas wie frames in html auch in java? AWT, Swing, JavaFX & SWT 19
W Vollbild Frames neu schreiben AWT, Swing, JavaFX & SWT 2
B Weitere Frames in der Mitte des HauptFrames anzeigen lassen AWT, Swing, JavaFX & SWT 2
N Unterschiedliche LookAndFeels bei zwei Frames? AWT, Swing, JavaFX & SWT 4
C Seiteneffekte beim Ändern der Größe des Frames AWT, Swing, JavaFX & SWT 8
G Swing-Frames und Statusleiste AWT, Swing, JavaFX & SWT 5
C JToolBar nicht minimieren beim Minimieren des Eltern-Frames AWT, Swing, JavaFX & SWT 4
X Refresh eines Frames AWT, Swing, JavaFX & SWT 1
M Rechner/JVM hängt ab ca. 247 Frames AWT, Swing, JavaFX & SWT 8
M Parameterübergabe zwischen Frames AWT, Swing, JavaFX & SWT 2
G Verknüpfung von Frames über Buttons AWT, Swing, JavaFX & SWT 4
D Methodenaufruf bei schließen des Frames AWT, Swing, JavaFX & SWT 4
G Lage von Internal Frames AWT, Swing, JavaFX & SWT 5
M ActionListener-Zugriff durch mehrere Frames AWT, Swing, JavaFX & SWT 5
G Frames sperren AWT, Swing, JavaFX & SWT 9
Wildcard Internal Frames und JDialog AWT, Swing, JavaFX & SWT 4
A Layoutproblem beim Vergrößern eines Frames AWT, Swing, JavaFX & SWT 9
R Autoresize eines Panel nach resize des Frames? AWT, Swing, JavaFX & SWT 3
K frames on top und frage zu JOptionPane AWT, Swing, JavaFX & SWT 2
G Dialog "übermalt" Teile des Frames AWT, Swing, JavaFX & SWT 20
G Mindestgröße eines Frames AWT, Swing, JavaFX & SWT 14
S Farbe des Frames ändern AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben