import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;class B extends JPanel{
  public void paintComponent(Graphics g){
    super.paintComponent(g);
    g.drawLine(0,0,100,100);
  }
}
public class A extends JFrame{
  public A(){
    setTitle("A");
    setSize(200,200);
    this.addWindowListener(new WindowAdapter(){
      public void windowCloing(WindowEvent we){
        System.exit(0);
      }
    });
    this.setVisible(true);
    Container contentPane =getContentPane();
    contentPane.add(new B());
  }
  
  public static void main(String[] args){
    new A();
  }
  
}
不懂的看书上 ``其实这些问题自己可以解决的`
加我QQ36634802以后有什么问题我们一起研究

解决方案 »

  1.   

    这里面b类好象是面版吧 
    你这是画在面版上然后加到A去的吗?是这样吧 
    我想要的是b类就是一个单个的类用Graphics画 这样把A,B类联系起来
    而不加任何的容器
      

  2.   

    public void init()
    {
        l1.paint()
             }
    好象不行吧   
    你在A的画图的函数中  调用一下B的画图函数试试。。
    具体我也不知道。。
    不了解画图是怎么画的。
      

  3.   

    public class A extends JFrame
    {
    B l1;
             public A(B l1)
             {
               super("Test");
               this.l1 = l1;
               init();
             }
    public void init()
    {
                this.getContentPane().add(l1);
                
             }

    }class B extends Canvas
    {
    Graphics g=this.getGraphics();
    public void paint()
    {
    g.setColor(Color.yellow);
    g.fillRect(200,100,100,20);
    }
    }