/**
* 日期:2018.8.25
* 作者:小孟鱼
* 功能:java绘图原理
*/
package com.tankedazhan;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Demo2_1 extends JFrame{
MyPanel mp=null;
public static void main(String[] args) {
Demo2_1 demo2_1=new Demo2_1();
}
//构造函数
public Demo2_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);
//证明paint被调用
System.out.println("paint方法被调用");
//先画一个圆
g.drawOval(10, 10, 30, 30);
//画一条直线
g.drawLine(10, 10, 40, 40);
//画出矩形边框
g.drawRect(10, 10, 40, 40);
//填充颜色
g.setColor(Color.RED);
//画一个填充矩形
g.fillRect(20, 20, 40, 60);
//在面板上画图片
Image im=
Toolkit.getDefaultToolkit().getImage
(Panel.class.getResource("/6B9A6703.jpg"));
//现实
g.drawImage(im, 10, 10,150, 200,this);
//如何画出字
g.setColor(Color.red);
g.setFont(new Font("华文彩云",Font.BOLD,30));//字体 粗体 大小
g.drawString("小孟鱼好帅", 30, 30);
}
}