Login
网站首页 > 文章中心 > 其它

java画图板

作者:小编 更新时间:2023-08-05 13:54:01 浏览量:125人看过

在 Java 中实现一个简单的画图板,你可以使用 Swing 组件和 Java 2D 图形库。

1.jpg

下面土嘎嘎小编分享一个基本示例:

〓〓java代码如下:〓〓

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class DrawingBoard extends JFrame {

    private int lastX, lastY; // 记录上一个点的坐标    

    public DrawingBoard() {

        setTitle("Java Drawing Board");

        setSize(800, 600);

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        

        JPanel canvas = new JPanel() {

            @Override

            protected void paintComponent(Graphics g) {

                super.paintComponent(g);

                Graphics2D g2 = (Graphics2D) g;

                g2.setStroke(new BasicStroke(2)); // 设置绘制线条的粗细        

                // 绘制线段

                g2.drawLine(0, 0, lastX, lastY);

            }

        };        

        canvas.addMouseListener(new MouseAdapter() {

            @Override

            public void mousePressed(MouseEvent e) {

                lastX = e.getX();

                lastY = e.getY();

            }

        });        

        canvas.addMouseMotionListener(new MouseMotionAdapter() {

            @Override

            public void mouseDragged(MouseEvent e) {

                Graphics g = canvas.getGraphics();

                g.drawLine(lastX, lastY, e.getX(), e.getY());

                lastX = e.getX();

                lastY = e.getY();

            }

        });        

        getContentPane().add(canvas);

    }    

    public static void main(String[] args) {

        SwingUtilities.invokeLater(() -> {

            DrawingBoard board = new DrawingBoard();

            board.setVisible(true);

        });

    }

}

上面给出的示例中,创建了一个继承自  JFrame  的  DrawingBoard  类,用于展示画图板窗口。窗口的内容面板是一个  JPanel ,用于绘制图形。

在  paintComponent  方法中,使用  Graphics2D  对象绘制线段。 mousePressed  方法记录鼠标点击位置的坐标,并在  mouseDragged  方法中绘制从上一个点到当前点的线段。

通过调用  getGraphics()  方法获取画布的  Graphics  对象,并使用  drawLine  方法绘制线段。最后更新  lastX  和  lastY  值以记录最新的点的坐标。

在  main  方法中创建  DrawingBoard  实例并显示出来。

土嘎嘎技术网友情提示:这只是一个简单的示例,仅实现了基本的画线功能。你可以根据需要扩展和定制画图板,例如添加其他图形、颜色选择、保存绘图等功能。


版权声明:倡导尊重与保护知识产权,本站有部分资源、图片来源于网络,如有侵权,请联系我们修改或者删除处理。
转载请说明来源于"土嘎嘎" 本文地址:http://www.tugaga.com/jishu/other/1394.html
<<上一篇 2023-08-05
下一篇 >> 2023-08-05

编辑推荐

热门文章