public class Demo1 extends JFrame{ MyPanel mp= null ; public static void main(String[] args){ Demo1 demo= new Demo1(); } public Demo1(){ mp= new MyPanel(); this .add(mp); this .setSize( 400 , 300 ); this .setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this .setVisible( true ); } } //定义一个MyPanel(我自己的面板,是用于绘图和显示绘图的区域) class MyPanel extends JPanel{ //覆盖JPanel的paint方法 public void paint(Graphics g){ //Graphics是绘图的重要类,可以理解成一只画笔 //1、调用父类函数完成初始化(不可少) super .paint(g); // System.out.println("paint被调用"); g.drawOval( 10 , 10 , 30 , 30 ); //先画出一个圆 g.drawLine( 10 , 10 , 40 , 40 ); // 画直线 g.drawRect( 10 , 10 , 40 , 60 ); //画矩形边框 g.setColor(Color.BLUE); //设置颜色 g.fillRect( 70 , 70 , 40 , 60 ); //填充矩形 g.setColor(Color.gray); g.fillRect( 150 , 150 , 30 , 40 ); //在面板上画出图片 Image im=Toolkit.getDefaultToolkit().getImage(Panel. class .getResource( "/imag_1" )); g.drawImage(im, 200 , 200 , 200 , 150 , this ); //显示 //画出字体 g.setColor(Color.GREEN); g.setFont( new Font( "隶书" ,Font.BOLD, 30 )); g.drawString( "祖国万岁!" , 100 , 80 ); } } |