Slyh: GridBagLayout links oben platzieren!

Beitrag lesen

Hallo,

du setzt also das GridBagLayout direkt für die InternalFrames.
Wie mir scheint, bietet das GridBagLayout gar keine Möglichkeit das
eigene Gitternetz innerhalb des Containers auszurichten, wenn dieses
nicht den ganzen Platz des Containers einnimmt.

Bist du dir eigentlich sicher, daß du das Internalframe ab einer
bestimmten Größe nur einen Teil (bei dir die linke obere Ecke) des
zur Verfügung stehenden Platzes zur Darstellung der Komponenten
verwenden soll? Eigentlich machen sich riesige unbenutzte Flächen
in der Regel nicht so gut. Der Benutzer möchte durch das Vergrößern
von Fenstern eigentlich immer ein Ziel erreichen: Er möchte, daß die
Komponenten den zur Verfügung stehenden Platz auch nutzen.

Wie dem auch sei. Du kannst deinen Inhalt durch die Schachtelung von
Layoutmanagern in der linken oberen Ecke platzieren.
Füge dazu deine Komponenten nicht direkt in den InternalFrame ein,
sondern zuerst einmal in ein (J)Panel. Diesem Panel weist du -- wie
bisher dem InternalFrame -- das GridBagLayout zu und fügst dort alle
Komponenten ein. Eben wie bisher beim InternalFrame.

Das Panel fügst du (also einzige Komponente) in das InternalFrame
ein. Das InternalFrame erhält nicht mehr das GridBagLayout als
LayoutManager, sondern einen beliebigen anderen Layoutmanager, der
seinen Ursprung eben in der linken oberen Ecke hat. Das FlowLayout
sollte es hier beispielweise tun.

Gruß
Slyh