3
这里是我的代码:如何更改JFrame中组件的颜色?
public class JavaApplication7 extends JPanel
{
public static void main(String[] args) {
JPanel pan = new JPanel();
JFrame frm = new JFrame();
frm.add(new JavaApplication7());
frm.setSize(500, 500);
frm.setBackground(Color.yellow);
frm.setForeground(Color.red);
frm.setVisible(true);
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pan.setSize(768,512);
pan.setVisible(true);
}
public void paintComponent (Graphics g){
g.drawOval(50, 50, 50, 50);
g.setColor(Color.CYAN);
}
}
我想椭圆形改变颜色,但是当我运行我的程序它仍然是黑色的,而不是我想要的青色。
不要忘记调用'super.paintComponent'在被覆盖的'paintComponent'方法首先调用,否则保证的广告,你会被张贴有关视觉异常下一:P也不要忘记创造并通过'SwingUtilities.invokeXXX'块操纵EDT上的Swing组件 –
@DavidKroukamp首先感谢您的建议。虽然如果我把super.paintComponent()然后背景颜色消失我怎么能克服这个问题? –
绘制图形对象的背景颜色,即'g.setColor(Color.red); g.fillRect(0,0,的getWidth(),的getHeight());' –