我想画各种不同的矩形在一个JPanel面板上,不知道要怎么做啊?
知道的教我一下哦
谢谢简单的程序如下
import java.awt.*;
import java.applet.Applet;
public class Rect extends Applet{
   public void paint(Graphics g){  
g.drawRect(20,20,60,40);
g.fillRect(100,20,60,40);
    g.drawRoundRect(180,20,60,40,20,20);
    g.fillRoundRect(20,80,60,40,40,30);
g.draw3DRect(100,80,60,40,true);
g.fill3DRect(180,80,60,40,false);
  }
}  

 
如何使上面这些在一个面板上体现呢?

解决方案 »

  1.   

    同样继承一个JPanel,在它的public void paint(Graphics g)函数里这样写就可以了呀
      

  2.   

    JComponent都有paint, paintComponent, repaint方法的,override就可以了
      

  3.   

    JPanel也有paint 和 repaint方法,在它的public void paint(Graphics g)函数里这样写就可以
      

  4.   

    对呀,不用想了哈.就是另外写一个类来继承JPanel,再把要画的东东加进去,就好了哈!!!呵呵
      

  5.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class RectTest {
        public RectTest() {
        }    public static void main(String[] args) {
            RectTest recttest = new RectTest();
            RectFrame frame = new RectFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.show();    }
    }class RectFrame extends JFrame{
        public RectFrame(){
            setTitle("RectTest");
            setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);        //add panel to frame        RectPanel panel = new RectPanel();
            Container contentPane = getContentPane();
            contentPane.add(panel);
        }
        public static final int DEFAULT_WIDTH = 300;
        public static final int DEFAULT_HEIGHT = 200;
    }class RectPanel extends JPanel{
        public RectPanel(){
        }
        public void paint(Graphics g){
            g.drawRect(20,20,60,40);
            g.fillRect(100,20,60,40);
            g.drawRoundRect(180,20,60,40,20,20);
            g.fillRoundRect(20,80,60,40,40,30);
            g.draw3DRect(100,80,60,40,true);
            g.fill3DRect(180,80,60,40,false);
        }
    }〈此例调试通过〉
      

  6.   

    to:zbhfyl(沙新月明) 
    谢谢你还有楼上的各位热心朋友本提问已经得到解决,谢谢大家了!