java画笔工具代码详解

package gui;

import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.ArrayList;
import java.util.Iterator;
//启动类
public class Demo01 {
    public static void main(String[] args) {
        new Test();
    }
}

class Test extends Frame {  
     //用来存放鼠标的坐标位置
    ArrayList points;
    public Test(){
    //设置窗口属性
        super("画笔");
        setBounds(500,200,600,600);
        setVisible(true);
        points = new ArrayList<>();
        //给窗口设置监听
        addMouseListener(new MyMouseListener());
    }

    @Override
    public void paint(Graphics g) {
    //迭代points集合
        Iterator iterator = points.iterator();
        while (iterator.hasNext()){
            Point point = (Point) iterator.next();
            //对每个坐标进行绘制
            g.setColor(Color.YELLOW);
            g.fillRect(point.x,point.y,10,10);
        }
    }
    //将监听得到的鼠标坐标添加进points集合
    public void addPaint(Point point){
        points.add(point);
    }



    private class MyMouseListener extends MouseAdapter{
        @Override
        //对鼠标点击事件进行重写
        public void mousePressed(MouseEvent e) {
        //获得鼠标的坐标资源并添加进集合
            Test frame = (Test) e.getSource();
            frame.addPaint(new Point(e.getX(),e.getY()));
            //对frame进行repain()操作
            frame.repaint();
        }
    }



}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Java画笔工具来绘制背景,你需要遵循以下步骤: 1. 加载图片 使用Java内置的ImageIO类加载图片,代码如下: ```java BufferedImage image = ImageIO.read(new File("path/to/image.jpg")); ``` 2. 创建画布 使用Java的Graphics2D类创建画布,代码如下: ```java BufferedImage bufferedImage = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB); Graphics2D g2d = bufferedImage.createGraphics(); ``` 3. 绘制图片 使用画笔工具将图片绘制到画布上,代码如下: ```java g2d.drawImage(image, 0, 0, null); ``` 4. 绘制背景 使用画笔工具设置填充颜色并绘制背景,代码如下: ```java g2d.setColor(Color.LIGHT_GRAY); g2d.fillRect(0, 0, image.getWidth(), image.getHeight()); ``` 5. 保存画布 将绘制好的画布保存为图片,代码如下: ```java ImageIO.write(bufferedImage, "jpg", new File("path/to/new/image.jpg")); ``` 完整的代码如下: ```java import java.awt.Color; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class Main { public static void main(String[] args) throws Exception { BufferedImage image = ImageIO.read(new File("path/to/image.jpg")); BufferedImage bufferedImage = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_RGB); Graphics2D g2d = bufferedImage.createGraphics(); g2d.drawImage(image, 0, 0, null); g2d.setColor(Color.LIGHT_GRAY); g2d.fillRect(0, 0, image.getWidth(), image.getHeight()); ImageIO.write(bufferedImage, "jpg", new File("path/to/new/image.jpg")); } } ``` 这段代码会将原始图片加载到内存中,创建一个画布,将原始图片绘制到画布上,并且在画布上绘制一个灰色的背景。最后将绘制好的画布保存为新的图片。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值