学习java Graphics绘图技术

一、Graphics简单实现

1、写一个自己的类继承JPanel,并重写paint方法:

//定义一个我的面板,用于绘图和实现绘图的区域
class MyPanel extends JPanel{
    //覆盖JPanel 的paint方法
    //Graphics是绘图的重要类,可以理解成是一支画笔
    public void paint(Graphics g){
        //1、调用父类函数完成初始化
        //jdk1.4版之前这句话不能少,要不图像出不来,但是现在这句话没有也可以正常显示
        //super.paint(g);
        //画一个圆
        g.drawOval(10, 10, 100, 100); 
        //g.repaint();//重新绘制


    }
}

2、将写好的自己的面板放入到一个JFrame中,即可显示:

public class TestGraphics extends JFrame{
    MyPanel mPanel = null;
    public static void main(String[] args) {
        TestGraphics testGraphics = new TestGraphics();
    }
    public TestGraphics() {
        mPanel = new MyPanel();
        this.add(mPanel);

        this.setTitle("画一个圆");//设置标题
        this.setSize(400, 200);//设置窗口大小
        this.setLocation(300, 200);//设置相对于window界面的位置
        this.setIconImage((new ImageIcon("images/work.png")).getImage());//设置窗体图标
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭窗口保证JVM也退出,避免无谓的内存消耗
        this.setVisible(true);//显示
    }

}

二、Graphics类的一些常用的方法

1、画直线:drawLine(int x1,int y1,int x2,int y2);

x1、y1 起点坐标,x2、y2 终点坐标

2、画矩形边框:drawRect(int x1,int y1,int width,int height);

x1、y1 矩形左上角的位置,width、height 矩形的宽高

3、画椭圆边框:fillOval(int x1,int y1,int width,int height);

同上2

4、画填充矩形:fillRect(int x1,int y1,int width,int height);

同上2

5、画填充椭圆:fillOval(int x1,int y1,int width,int height);

同上2

6、画图片:drawImage(Image img,int x1,int y1,int width,intheight,this);

Image image = Toolkit.getDefaultToolkit().getImage("images/work.png");//获取图片对象

img 图片对象,x1、y1 左上角位置,width、height图片宽高,this 画在哪里,this是指直接画在当前对象

7、画字符串:drawString(String str,int x,int y);

str 字符类型文本,x、y 左上角位置

8、设置画笔的字体:setFont(Font font);

g.setFont(new Font("华文彩云",Font.BOLD,50));//参数依次代表:字体类型、粗体、字体大小

9、设置画笔的颜色:setColor(Color c);

g.setColor(Color.red);//也可以new Color(255,0,0);之类的

10、画弧线 drawArc(int x,int y,int width,int height,int startAngle,int arcAngle)

自己理解:x、y 弧线左上角位置,width、height 先画出的圆的宽高,startAngle、arcAngle 要显示的圆的线的起始位置和结束角度,画弧线时先把线的起始结束位置分别设为0,360:g.drawArc(10, 10, 100, 200, 0, 360),再跟据显示出来的图像判断需要保留显示的弧线的起始和结束角度更改最后两位的参数

(官方解释:x、y 弧线左上角x.y坐标,width、height 要绘制的弧的宽高,startAngle起始角度、arcAngle 相对于起始角度的弧的角度范围

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值