Java的第一遍学习笔记 绘图

java绘图坐标体系

像素 

Java绘图技术 

一般 x和y 指的是左上角的坐标,并不是圆点。

public class DrawCircle extends JFrame { //JFrame对应窗口,可以理解为一个画框
    private MyPanel mp = null;

    public DrawCircle(){  //构造器
        mp = new MyPanel();//生成新画板
        this.add(mp);//把画板放入画框内
        this.setSize(400,300); //设置窗口大小
        this.setVisible(true); //设置为可以显示
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //这样点击×就退出了程序
    }

    public static void main(String[] args) {
        DrawCircle drawCircle = new DrawCircle();
    }

}
//定义一个MyPanel,继承JPanel类,
class MyPanel extends JPanel{
    //可以把MyPanel对象理解成一个画板
    public void paint(Graphics g){
        //可以把g理解成一支画笔,提供多种绘图方法
        super.paint(g); //调用父类的构造方法完成初始化
        g.drawOval(10,10,100,100);//画出一个圆形
    }
}

    值得探讨的一个问题:其实整个代码根本没有调用MyPanel的paint方法,那么它是怎么被调用多个呢: 1. 当组件第一次在屏幕显示时,程序会自动的调用paint()方法来绘制组件。2. 窗口最小化,再最大化。 3. 窗口的大小发生变化  4. repaint函数被调用。

绘图方法

全部都是 Graphics g 的方法

 重点:如何提取图片—— 图片要放在src文件夹中(根目录)。

Image image = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/1.2.3a.jpg"));
//只有路径不一样,前面都是写死的,用"/文件名"的格式题取       
g.drawImage(image,10,10,175,221,this); //设置图片大小

  fill3DRect(int x,int y,int width,int height,boolean raised):用预定的颜色填充一个突出显示的矩形。

事件处理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值