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 );
}
}
|