我需要使用paintComponent
喜欢这个
public class Screen extends JComponent
{
public void paintComponent(Graphics g)
{
Graphics2D g2d = (Graphics2D) g;
g.fillOval(Main.x, Main.y, 20, 20);
}
{
for(int c = 0; c<10; c++)
{
paintComponent(g);
}
}
这些方法属于扩展JComponent
的类。
在for循环中,java给出了一个错误
g
无法解析为变量
任何人都可以提供帮助吗?
谢谢!
答案 0 :(得分:2)
您的循环未包含在块或方法中:
public void paintComponent(Graphics g)
{
Graphics2D g2d = (Graphics2D) g;
g.fillOval(Main.x, Main.y, 20, 20);
}// method closed here itself
//{
//for(int c = 0; c<10; c++)
//{
//paintComponent(g);//here `g` is not declared
//}
答案 1 :(得分:0)
你不能调用paintComponent(Graphics g)
这就是为什么我们有repaint()方法你应该知道Graphics是一个你无法创建的抽象类
它的实例。
另一件事我假设你试图让一个动画球能够做到这一点你应该首先阅读关于挥杆计时器。我也在学习java,所以继续尝试。