所以看起来像是我的一个错误,因为完全相同的代码适用于朋友,但不适合我。注意:我使用mac os和最新版本的eclipse。
但是我的问题是什么? 试图为JButton使用setBackground(Color.something)不能正常工作。 启动下面的程序时,按钮背景应为红色,如下所示:
对我来说,它看起来像这样
所以没有真正发生,setForeground按预期工作。在Frame或TextField上使用setBackground也可以按预期工作。对我来说它只适用于Buttons,JButtons。有人知道这个原因吗?
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class Test extends JFrame {
JButton[] button = new JButton[10];
public Test() {
setLayout(new FlowLayout());
for(int i = 0; i < 10; i++) {
button[i] = new JButton("" + i);
add(button[i]);
}
for (int i = 0; i < 10; i++) {
button[i].setBackground(Color.green);
}
setSize(250,200);
setVisible(true);
}
public static void main(String[] args) {
Test test = new Test();
}
}