我正在尝试使用Java GUI组件制作类似lite-bright的游戏。我被困在这里,当动作发生时如何获取按钮的背景色?在JAVA API中,有类似JButton.getBackground()
的方法。
在我的程序中,当我单击按钮时,我想要该被单击按钮的背景色,并且想要在特定位置绘制该颜色的椭圆形。
这是我的代码
/**
* Action Listener for Buttons
*/
class ButtonAction implements ActionListener {
public void actionPerformed(ActionEvent e) {
setColor(getBackground()); // here i want to get background color as light blue.
}
}
b1 = new JButton("o");
Color c1 = new Color(100,255,255);// this is light blue color
b1.setBackground(c1);
ActionListener listener = new ButtonAction();
b1.addActionListener(listener);
/**
* this method will set vakue of the color and that color will use to draw oval
* filled with that color.
*/
public void setColor(Color C) {
this.c = C;
}