我的程序應該是當點擊一個按鈕時,將其刪除並將其替換爲標籤。在我的程序中,按鈕被點擊時被移除,但標籤不會被添加,直到單擊另一個按鈕,這將刪除帽子按鈕,但那個標籤不會顯示....等等。下面是代碼:Java - 添加標籤/刪除按鈕
//adds buttons to screen if corresponding
//boolForButtons is true, else it
//displays label
public void addButtons() {
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (boolForButtons[i][j]) {
add(buttons[i][j]);
} else {
remove(buttons[i][j]);
add(labels[i][j]);
}
}
}
}
//refreshs the screen
public void refreshButtons() {
revalidate();
repaint();
addButtons();
}
//if button is clicked
public class event implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
//set the button clicked to not show on the screen
if (e.getSource() == buttons[i][j]) {
boolForButtons[i][j] = false;
}
}
}
refreshButtons();
}
}
感謝 -
1)爲了更好地提供幫助,請發佈[SSCCE](http://sscce.org/)。 2)對於一個空間中的許多組件,請使用['CardLayout'](http://docs.oracle.com/javase/7/docs/api/java/awt/CardLayout.html),如[簡單示例](http://stackoverflow.com/a/5786005/418556)。 –