Hallo,
ich bin Java Einsteiger und habe ein kleines Problem mit dem JFrame. Ich möchte JButtons zur Laufzeit erstellen und auf meinem JFrame anzeigen lassen. Leider werden meine zur Laufzeit erstellten Buttons nicht sofort angezeigt, erst wenn ich mit dem Cursor über diese fahre. Muss ich vielleicht repaint() oder ähnliches aufrufen, nachdem ich die Buttons erstellt habe?
ich bin Java Einsteiger und habe ein kleines Problem mit dem JFrame. Ich möchte JButtons zur Laufzeit erstellen und auf meinem JFrame anzeigen lassen. Leider werden meine zur Laufzeit erstellten Buttons nicht sofort angezeigt, erst wenn ich mit dem Cursor über diese fahre. Muss ich vielleicht repaint() oder ähnliches aufrufen, nachdem ich die Buttons erstellt habe?
Java:
public TestArea() {
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 481, 649);
getContentPane().setLayout(null);
JButton btnAnzeige = new JButton("Anzeigen");
btnAnzeige.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
ButtonsAnzeigen();
}
});
btnAnzeige.setBounds(10, 11, 455, 23);
getContentPane().add(btnAnzeige);
}
public void ButtonsAnzeigen()
{
int k;
int tmpX = 0;
int tmpY = 0;
for(k = 0; k < 4; k++) {
JButton newBtn = new JButton();
newBtn.setBounds(tmpX, tmpY, 20, 20);
getContentPane().add(newBtn);
tmpX = tmpX + 22;
if (k==1) {
tmpX = 0;
tmpY = 22;
}
}
}