2013-10-20 60 views
0

嘿,我创建了一个显示奥林匹克环的简单框架,但我尝试将它们移植到小程序而没有任何成功。这是我正在运行的代码:用JApplet调用paintComponent

import java.awt.*; 
import javax.swing.*; 

public class CirclesApplet extends JApplet { 
private static final long serialVersionUID = 1L; 
Container c; 
public void init(){ 
    c = getContentPane(); 
    c.setSize(300, 300); 
    c.setBackground(Color.GRAY); 
    c.setLayout(new FlowLayout()); 
} 

public void paintComponent(Graphics g){ 
    super.paintComponents(g); 
    g.setColor(Color.BLUE); 
    g.drawOval(65, 90, 50, 50); 
    g.setColor(Color.YELLOW); 
    g.drawOval(95, 110, 50, 50); 
    g.setColor(Color.BLACK); 
    g.drawOval(125, 90, 50, 50); 
    g.setColor(Color.GREEN); 
    g.drawOval(155, 110, 50, 50); 
    g.setColor(Color.red); 
    g.drawOval(180, 90, 50, 50); 
    g.drawString("Olympic Rings", 120, 185); 
} 
} 

我在做什么错?

+0

*总是*在您认为可能重写的方法之前使用@ @ Override注解。如果你这样做了,你会看到@camickr是正确的,JApplet没有'paintComponent(...)'方法。 –

回答

2

我在做什么错?

JApplet,JFrame或JDialog没有paintComponent()方法。

正如您对其他贴子所知,您重写了面板的paintComponent()方法以进行自定义绘画,然后将面板添加到内容窗格。

JApplet没有什么不同,它也有一个内容窗格。