Ich habe Probleme beim Layout meines JFrame. Ich versuche die ToolBar oben hinzuzufügen, dann darunter Info, dann Farbe rechts unten, dann Kopien in der Mitte, dann die Drucktaste links und dann die Druckerliste unten. Wenn mir jemand in die richtige Richtung helfen könnte, wäre das toll.
// Deklariere GUI-Komponenten hier
// Eine JToolBar & JButton
private JPanel mainPanel;
private JPanel detailPanel;
private JPanel toolBarPanel;
private JToolBar jToolbar;
private JButton jbtAdmin, jbtHelp;
// Ein JPanel namens infoPanel & JLabel
private JPanel infoPanel;
private JLabel jlblOne;
// Ein JPanel namens colourPanel
private JPanel colourPanel;
private JRadioButton bwRadioButton, colourRadioButton;
private ButtonGroup btg;
// Ein JPanel namens noCopiesPanel
private JPanel noCopiesPanel;
private JLabel jlbCopies;
private JTextField jtfCopies;
// Ein JPanel namens printerPanel
private JPanel printerPanel;
private JComboBox printerBox;
private JButton jbtPrint;
// Konstruktor - Setze Layout & füge Komponenten hinzu...
// Der Konstruktor nimmt den ausgewählten Schüler entgegen und weist ihn currentStudent zu
public StudentFrame(Student studentIn){
// Setze aktuellen Schüler ein
currentStudent=studentIn;
// Rüste Toolbar auf & füge jbtAdmin hinzu
toolBarPanel = new JPanel();
toolBarPanel.add(jToolbar = new JToolBar());
jToolbar.add(jbtAdmin = new JButton("Admin"));
jToolbar.add(jbtHelp = new JButton("Hilfe"));
// Rüste infoPanel auf
infoPanel = new JPanel();
infoPanel.add(jlblOne = new JLabel(currentStudent.toString(), JLabel.CENTER));
// Rüste colourPanel mit RadioButtons aus
colourPanel = new JPanel(new GridLayout(2,1));
colourPanel.add(bwRadioButton = new JRadioButton("Schwarz-Weiß", true));
colourPanel.add(colourRadioButton = new JRadioButton("Farbe"));
btg = new ButtonGroup();
btg.add(bwRadioButton);
btg.add(colourRadioButton);
// Setze einen TitledBorder darum
colourPanel.setBorder(new TitledBorder("Farbe"));
// Rüste noCopiesPanel auf
noCopiesPanel = new JPanel(new GridLayout(1,2));
noCopiesPanel.add(jlbCopies = new JLabel("Kopien"));
noCopiesPanel.add(jtfCopies = new JTextField(3));
noCopiesPanel.setBorder(new TitledBorder("Drucken"));
// Rüste jbtPrint JButton auf
jbtPrint = new JButton("Drucken",new ImageIcon("Images/printerIcon.png"));
jbtPrint.setHorizontalTextPosition(JButton.CENTER);
jbtPrint.setVerticalTextPosition(JButton.TOP);
jbtPrint.setFont(new Font("Helvetica", Font.BOLD, 30));
jbtPrint.setBackground(Color.LIGHT_GRAY);
jbtPrint.setMnemonic('D');
// Rüste printerPanel auf
printerPanel = new JPanel();
String[] printerList = {"Drucker 24001", "Drucker 24002", "Drucker 24003", "Drucker 24004"};
printerPanel.add(printerBox = new JComboBox(printerList));
printerPanel.setBorder(new TitledBorder("Drucker"));
detailPanel = new JPanel(new GridLayout(2,1));
detailPanel.add(infoPanel, BorderLayout.NORTH);
detailPanel.add(colourPanel, BorderLayout.WEST);
detailPanel.add(noCopiesPanel, BorderLayout.CENTER);
detailPanel.add(jbtPrint, BorderLayout.EAST);
detailPanel.add(printerPanel, BorderLayout.SOUTH);
mainPanel = new JPanel();
mainPanel.add(toolBarPanel, BorderLayout.NORTH);
mainPanel.add(detailPanel, BorderLayout.SOUTH);
this.add(mainPanel);
//this.add(detailPanel);