class MyComponent extends Component {
public MyComponent(){
super();
设置大小:)
}
  public void paint(Graphics g) {
    g.setColor(Color.red);
    g.fillRect(50,50,400,400);
  }
}

解决方案 »

  1.   

    public class MyApplet extends Applet {
      public void init() {
        MyComponent c = new MyComponent();
        setLayout(new BorderLayout());
        add(c,BorderLayout.CENTER);
      }
    }
      

  2.   

    你何苦要这么做哪。
    其实你的mycomponent根本没有任何意义。直接就这么写代码就行了
    import java.applet.Applet;
    public class myapplet extends Applet
      { public void paint(Graphics g)
        {  
        g.setColor(Color.red);
        g.fillRect(50,50,400,400);
      }
    }
    这样给可以了。
    肯定没问题的e
      

  3.   

    masterz(MS MVP) 写的对你的paint方法最好super一下
     public void paint(Graphics g) {
        super.paint();
        g.setColor(Color.red);
        g.fillRect(50,50,400,400);
      }
      

  4.   

    to: masterz(MS MVP): Applet不是有默认的Layout吗?而且最后的结果是开始也什么也看不到,然后在浏览器窗口(appletviewer)动一下鼠标才有MyComponent的显示,为什么呢?to: sunni(死猪)(只有她,我确定): "public MyComponent(){super();)}"这里是多余的吧?java子类的构造方法会自动调用超类的默认构造方法的我的目的是要自己做一个Component,然后加到Applet中去,当然这个Component不是要显示一下“一片红”了啦  :)上面我说的问题仍然存在,就是总要动一下鼠标才看得到MyComponent,如果有谁知道答案请继续回答,另外如果谁有兴趣帮我考虑另外一个问题:http://expert.csdn.net/Expert/topic/1922/1922414.xml?temp=.6305506