tag ich benutze die Layoutmanager aber irgendwie werde meine buttons komisch angezeigt 
ich habe ein fenster auf dem links eine liste ist und recht am rand möchte ich 3 button untereinander. das problem ist das die button immer so groß wie das fenster werde.

ich habe ein fenster auf dem links eine liste ist und recht am rand möchte ich 3 button untereinander. das problem ist das die button immer so groß wie das fenster werde.
Code:
public class Mitarbeiterauswahl extends JFrame implements ActionListener {
private static final Color farbe[] = { Color.BLACK, Color.BLUE, Color.CYAN,
Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY,
Color.MAGENTA, Color.ORANGE, Color.PINK, Color.RED, Color.WHITE,
Color.YELLOW };
private JList list;
static JButton[] button = new JButton[3];
static String[] buttonbezeichnung ={"Ausgabe", "Leeren", "Uhrzeit ändern"};
int vergleich_zahl;
public Mitarbeiterauswahl() {
super("Mitarbeiterauswahl");
vergleich_zahl=Fenster2.zahl;
setSize(350, 300);
setLocationRelativeTo(null);
final JPanel mainPanel = new JPanel(new BorderLayout());
mainPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
// Liste
mainPanel.add(new JScrollPane(list), BorderLayout.CENTER);
JPanel buttonPanel = new JPanel(new GridLayout());
// Ausgabe-Button
for (int i = 0; i <3; i++){
button[i] = new JButton();
button[i].setText(buttonbezeichnung[i]);
button[i].addActionListener(this);
buttonPanel.add(button[i],BorderLayout.EAST);
};
mainPanel.add(buttonPanel, BorderLayout.EAST);
MouseWheelListener änderung = new MouseWheelListener() {
int farbzähler;
private static final int UP = 1;
private static final int DOWN = 2;
public void mouseWheelMoved(MouseWheelEvent e) {
int count = e.getWheelRotation();
int direction = (Math.abs(count) > 0) ? UP : DOWN;
changeBackground(direction);
}
private void changeBackground(int direction) {
mainPanel.setBackground(farbe[farbzähler]);
if (direction == UP) {
farbzähler++;
} else {
--farbzähler;
}
if (farbzähler == farbe.length) {
farbzähler = 0;
} else if (farbzähler < 0) {
farbzähler = farbe.length - 1;
}
}
};
mainPanel.addMouseWheelListener(änderung);
add(mainPanel);
setVisible(true);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent event) {
setVisible(false);
dispose();
}
});
}
public void itemStateChanged(ItemEvent event) {
List list = (List) event.getItemSelectable();
String str1 = list.getSelectedItem();
int pos = ((Integer) event.getItem()).intValue();
System.out.println("list.getSelectedItem: " + str1);
System.out.println("event.getItem: " + pos);
}
public static void start(){
new Mitarbeiterauswahl();
}
public static void main(String args[]) {
new Mitarbeiterauswahl();
}
public void actionPerformed(ActionEvent e) {
}
}