Java画笔的简单实用方法

发布时间 - 2026-01-11 03:07:12    点击率:

        Java中提供了画笔,可以使用画笔做出界面上的任何东西,接下来先熟悉一下画笔的使用过程,以画一条线为例。

源码:

import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JFrame;
import javax.swing.JPanel;

/**
 * 画笔的初始用
 * 
 * @author M_WBCG
 * 
 */
public class paintBrush extends JFrame implements MouseListener {
	// 画笔初始化
	Graphics g;
	// 坐标的起点和终点的初始化
	int x1, y1, x2, y2;

	public paintBrush() {
		// TODO Auto-generated constructor stub
		// 创建获得画笔的面板
		JPanel drawPanel = new JPanel();
		// 给窗体添加面板
		add(drawPanel);
		setTitle("画笔");
		setSize(500, 500);
		setVisible(true);
		// 画笔获取要在可见之后,设置*局属性
		g = drawPanel.getGraphics();
		drawPanel.addMouseListener(this);
	}

	public static void main(String[] args) {
		new paintBrush();
	}

	@Override
	public void mouseClicked(MouseEvent e) {
		// TODO Auto-generated method stub

	}

	@Override
	public void mousePressed(MouseEvent e) {
		// TODO Auto-generated method stub
		x1 = e.getX();
		y1 = e.getY();
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub
		x2 = e.getX();
		y2 = e.getY();
		g.drawLine(x1, y1, x2, y2);
		x1 = x2 = y1 = y2 = 0;
	}

	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub

	}

	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub

	}
}

        在此就可以引申出很多的问题,怎样在一边画线的时候就可以看到线的形成?怎样去画一条直线?在画完一条直线后最小化该程序后重新打开线段消失?怎样在画完直线后关闭掉程序第二次打开还存在?

        以上就是本文的全部内容,希望对大家有所帮助!


# java  # 画笔的使用  # Java定义画板类的方法  # 用Java实现简单画板功能  # Java实现简单画画画板  # Java Swing实现画板的简单操作  # Java版画板的实现方法  # JAVA GUI自定义JPanel画板背景  # java基于GUI实现简单画笔小画板  # 就可以  # 画一  # 在此  # 要在  # 可以使用  # 为例  # 面上  # 画线  # 局属  # JFrame  # JPanel  # author  # extends  # javax  # swing  # implements  # int  # M_WBCG  # public  # paintBrush 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何获取免费开源的自助建站系统源码?  PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】  Laravel如何实现用户密码重置功能?(完整流程代码)  三星、SK海力士获美批准:可向中国出口芯片制造设备  Python文本处理实践_日志清洗解析【指导】  个人摄影网站制作流程,摄影爱好者都去什么网站?  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  高防服务器租用首荐平台,企业级优惠套餐快速部署  如何在景安云服务器上绑定域名并配置虚拟主机?  如何选择PHP开源工具快速搭建网站?  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  如何用免费手机建站系统零基础打造专业网站?  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  Laravel如何记录自定义日志?(Log频道配置)  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  Android滚轮选择时间控件使用详解  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  如何在阿里云服务器自主搭建网站?  JS经典正则表达式笔试题汇总  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  如何在万网主机上快速搭建网站?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel怎么连接多个数据库_Laravel多数据库连接配置  php485函数参数是什么意思_php485各参数详细说明【介绍】  在centOS 7安装mysql 5.7的详细教程  Linux后台任务运行方法_nohup与&使用技巧【技巧】  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Laravel storage目录权限问题_Laravel文件写入权限设置  高端企业智能建站程序:SEO优化与响应式模板定制开发  网易LOFTER官网链接 老福特网页版登录地址  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  Laravel如何处理CORS跨域请求?(配置示例)  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  Mybatis 中的insertOrUpdate操作  网站建设保证美观性,需要考虑的几点问题!  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  在Oracle关闭情况下如何修改spfile的参数  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  LinuxCD持续部署教程_自动发布与回滚机制  如何在云指建站中生成FTP站点?  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  jquery插件bootstrapValidator表单验证详解  手机软键盘弹出时影响布局的解决方法  Laravel如何实现API资源集合?(Resource Collection教程)