PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Java: BorderLayout


terminator2k3
2004-01-10, 14:03:42
Hi Leute!
I hab ne kleine Frage zu meinem Javaprogramm. Ich programmiere noch nicht sehr lange Java und so hat sich jetzt ein Problem ergeben.
Ich möchte in meinem Programm 3 JPanels einbauen. Eines in North, eines in Center und eines in East. Jedoch überlagert ein Panel das andere, was heißt dass ich immer nur ein Panel sehe. Hier ein kleiner Ausschnitt aus meinem Programm:

Container c;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
c = getContentPane();
c.setLayout(new BorderLayout());
c.add(jpaButtonArea,BorderLayout.NORTH);
c.add(jpaSheet,BorderLayout.CENTER);
c.add(jpaSchriftfarbe,BorderLayout.EAST);

Bei Bedarf poste ich den ganzen Quelltext....
Ich hoffe ihr könnt mir helfen. Vielen Dank im Voraus,
MFG, terminator2k3

HellHorse
2004-01-10, 15:54:50
Ein Screenshot würde helfen.
Was ist in den Panels?
Mischtst du AWT und Swing Komponenten?

terminator2k3
2004-01-10, 16:07:36
thx für die Antwort:
Nein verwende ausschliesslich Swing. Außerdem ein JMenu, aber ich glaube nicht, dass dies das Problem ist.....

In den Panels befinden sich folgende Komponenten:
jpaButtonArea...JButtons, momentan nur einer
jpaSheet...Hier befindet sich eine JTextarea
jpaSchriftfarbe...Hier gibts im Moment nur nen JButton um Platz auszufüllen

Bin hier leider noch nicht registriert, deshalb hier der Screenshot mittels URL:

http://members.aon.at/soulhunters/screen.jpg

MFG, terminator2k3

HellHorse
2004-01-10, 21:21:03
Ich dachte eher an einen Screenshot, wo man das Problem sieht ;)

terminator2k3
2004-01-11, 09:33:37
Das ist grad das Problem! Es sollten 3 Panels sichtbar sein, jedoch seieht man nur eines: Das Panel mit der JTextArea....

HellHorse
2004-01-11, 11:23:35
Ah so :bonk:
Jetzt ist wohl der Zeitpunk gekommen, wo Quellcode hilfreich ist.

malchishnik
2004-01-11, 11:36:04
Ich weiß jetzt zwar nicht warum es bei dir nicht geht, aber dieser Code funktioniert:

import java.awt.*;
import javax.swing.*;

public class ProblemJpanel extends JFrame
{
JPanel jpaButtonArea;
JPanel jpaSheet;
JPanel jpaSchriftfarbe;
private JMenuBar mbar;

public ProblemJpanel(String Title)
{
super(Title);
//Menü
mbar = new JMenuBar();
JMenu m = new JMenu("Datei");
m.add(new JMenuItem("Schließen"));
mbar.add(m);
JMenu m2 = new JMenu("Bearbeiten");
m2.add(new JMenuItem("kopieren"));
mbar.add(m2);
JMenu m3 = new JMenu("Info");
m3.add(new JMenuItem("?"));
mbar.add(m3);
setJMenuBar(mbar);
setSize(400,400);
//Jpanels
jpaButtonArea = new JPanel();
jpaSheet = new JPanel();
jpaSchriftfarbe = new JPanel();
jpaButtonArea.add(new JButton("Button Nord"));
jpaSheet.add(new JTextArea(10,10));
jpaSchriftfarbe.add(new JButton("Button Ost"));
Container c;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
c = getContentPane();
c.setLayout(new BorderLayout());
c.add(jpaButtonArea,BorderLayout.NORTH);
c.add(jpaSheet,BorderLayout.CENTER);
c.add(jpaSchriftfarbe,BorderLayout.EAST);
setVisible(true);
}

public static void main(String[] args)
{
ProblemJpanel jp = new ProblemJpanel("test");
}
}

terminator2k3
2004-01-11, 11:51:52
Danke! Hab schon rausgefunden warum es nicht hingehauen hat: Ich hatte ein Problem mit dem Container.......
Aber jetzt gehts, thx