/**
*功能: java 绘图技术原理
*/
package xxxx;
import javax.swing.*;
import java.awt.*;
public class Demo9_1 extends JFrame{
MyPanel mp=null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Demo9_1 demo9_1=new Demo9_1();
}
public Demo9_1(){
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方法
//Graphics是绘图的重要类,可以把它理解成一只画笔
public void paint(Graphics g){
//1.调用父类函数完成初始化,这句话不能少
super.paint(g);
//先画一个圆
g.drawOval(10, 10, 30, 30);
//画出直线
g.drawLine(10, 10, 40, 40);
//画矩形边框
g.drawRect(10, 10, 40, 60);
//画填充矩形
g.setColor(Color.blue); //设置颜色
g.fillRect(10, 90, 40, 60);
g.setColor(Color.RED);
g.fillRect(10,160, 40, 60);
//在面板上画一个图片
Image im=
Toolkit.getDefaultToolkit().getImage
(Panel.class.getResource("/2.jpg"));
g.drawImage(im, 90, 90, 250, 190, this);
//画出字
g.setColor(Color.red);
g.setFont(new Font("宋体",Font.BOLD,30));
g.drawString("易烊千玺", 90, 30);
}
}
运行结果如下图所示: