日期:2014-05-20 浏览次数:20950 次
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class TestComponent extends JComponent { public TestComponent() { } public void paintComponent(Graphics g) { int x = 0; int y = 0; g.fillOval(x, y, 30, 30); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.add(new TestComponent()); frame.setSize(400, 300); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }
------解决方案--------------------
这位哥们,你给的信息太少 了,怎么给你找原因啊?“其他一切正常。”可能吗?
------解决方案--------------------
把代码贴出来看看吧~
------解决方案--------------------
这是继承了Frame或者实现了相关的接口,需要重写paint方法,最好的方式去copy,用eclipse也有相关提示的,举例:
import java.awt.*;
public class TestPaint {
public static void main(String[] args) {
new PaintFrame().launch();
}
}
class PaintFrame extends Frame{
public void launch(){
setBounds(200,200,640,480);//设置窗口的位置和大小
setVisible(true);
}
public void Paint(Graphics g){ //需要重写paint方法,不能错!
Color c = g.getColor();
g.setColor(Color.blue);
g.fillOval(50, 55, 30, 40);
g.setColor(Color.RED);
g.fillRect(80, 80, 40, 50);
g.setColor(c);
}
}