JPanel - Groesse festlegen + GUI -Fenster

Na_dine

Mitglied
Hallo,
ich bin gerade dabei die GUI meiner ersten Java Applikation zu entwerfen, habe aber zwei Probleme:
Ich habe auf den verschiedenen Seiten JPanel fuer die jeweiligen Titel der Seiten erstellt und im Border Layout "North" geaddet. Neben der Ueberschrift befinden sich noch Images, die alle unterschiedlich gross sind und bislang die Groesse der Titel bestimmen. Wie kann ich nun automantisch festlegen, dass alle Panels nur beispielsweise 50 Pixel hoch sind?

meine zweite Frage: bei der Applikation handelt es sich um ein Spiel. Ich habe bislang verschiedenen Frames erstellt fuer die einzelnen Fenster wie spieleinstellungen, hauptmenue etc., mit actionlistenern verbunden um von einer zur anderen seite ueber JButton-druck zu kommen. Bei diesem Verfahren werden aber logischerweise immer wieder neue JFrames geoeffnet was sehr unschoen ist. Hat jemand ne idee wie ich verschiedene Oberflaechen in nur einem Fenster anzeigen kann? :confused:

Schon mal om Vorraus DANKE fuer eure Hilfe, :rolleyes:
Nadine
 
Super,
Dankeschoen, dass mit Preffered Size hat schon mal geklappt :)

Das mit dem CardLayout ist ne gute Idee, werd ich mich mal reinfuchsen.
 
Habe zu dem Titel noch mal eine Frage
setPrefferedSize hat geklappt, nun habe ich in dem JPanel ein JLabel geaddet. Leider haengt das JLabel automatiscd immer genau unter dem oberen Rand des JPanels. Gibt es eine Methode mit der ich das JLabel an den unteren Rand oder in die Mitte setzen kann? setVerticalTextPosition, setVerticalAlignment und gleich im Konstruktorn JLabel.BOTTOM habe ich schon ausprobiert aber sie funktionieren nicht.

Hier mal mein Code:

JLabel label1 = new JLabel("Hauptmenue", JLabel.BOTTOM);
Font f1 = new Font("Flubber",Font.BOLD,45);
label1.setFont(f1);

JPanel hm = new JPanel();
hm.add(label1);
hm.setPreferredSize(new Dimension(400,100));
 
Hallo,

für mich klingt es mal so, als würde es am LayoutManager des JPanels liegen. Du könntest dort auch das BorderLayout setzen und das Label dann im "Süden" anordnen.

MFG

zEriX
 

Neue Beiträge

Zurück