Java绘图技术的详解及实例

发布时间 - 2026-01-11 02:39:51    点击率:

Java绘图技术的详解及实例

简单实例

public class Demo1 extends JFrame{
  MyPanel mp=null;
  
  public static void main(String[] args){
    Demo1 demo=new Demo1();
  }
  
  public Demo1(){
    mp=new MyPanel();
    this.add(mp);
    this.setSize(400,300);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
  }
}
//定义一个MyPanel(我自己的面板,是用于绘图和显示绘图的区域)
class MyPanel extends JPanel{
  //覆盖JPanel的paint方法
  public void paint(Graphics g){    //Graphics是绘图的重要类,可以理解成一只画笔
    //1、调用父类函数完成初始化(不可少)
    super.paint(g);
//    System.out.println("paint被调用");
    g.drawOval(10, 10, 30, 30);     //先画出一个圆
    g.drawLine(10, 10,40, 40);    // 画直线
    g.drawRect(10, 10, 40, 60);    //画矩形边框
    
    g.setColor(Color.BLUE);      //设置颜色
    g.fillRect(70, 70, 40, 60);    //填充矩形
    
    g.setColor(Color.gray);
    g.fillRect(150, 150, 30,40);
    
    //在面板上画出图片
    Image im=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/imag_1"));
    g.drawImage(im, 200, 200, 200, 150, this); //显示
    //画出字体
    g.setColor(Color.GREEN);
    g.setFont(new Font("隶书",Font.BOLD,30));
    g.drawString("祖国万岁!", 100, 80);
    
  }
}

1、Component类提供了两个和绘图相关最重要的方法

1)paint(Graphics g)绘制组件外观

2)repaint()刷新组件的外观

当组件第一次在屏幕显示时,程序会自动的调用paint()方法来绘制组件。

2、关于Graphics类

运行效果如下:

以上就是Java绘图技术的详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Java绘图技术  # Java绘图的详解  # Java绘图技术基础(实例讲解)  # 使用Java的Graphics类进行绘图的方法详解  # Java的绘图模式使用浅析  # Java MeteoInfo解析与绘图代码教程详解  # 画出  # 自己的  # 一只  # 如有  # 最重要  # 希望能  # 谢谢大家  # 方法来  # 板上  # 疑问请  # setDefaultCloseOperation  # demo  # add  # setSize  # EXIT_ON_CLOSE  # Graphics  # super  # System  # paint  # setVisible 


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


相关推荐: Python企业级消息系统教程_KafkaRabbitMQ高并发应用  如何安全更换建站之星模板并保留数据?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  Laravel如何创建自定义Facades?(详细步骤)  EditPlus中的正则表达式 实战(1)  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  香港服务器租用费用高吗?如何避免常见误区?  使用Dockerfile构建java web环境  如何在万网利用已有域名快速建站?  如何用花生壳三步快速搭建专属网站?  如何正确下载安装西数主机建站助手?  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  python中快速进行多个字符替换的方法小结  Python函数文档自动校验_规范解析【教程】  Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  微信小程序 canvas开发实例及注意事项  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  如何打造高效商业网站?建站目的决定转化率  javascript基于原型链的继承及call和apply函数用法分析  网站建设要注意的标准 促进网站用户好感度!  清除minerd进程的简单方法  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  如何快速搭建自助建站会员专属系统?  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  Linux安全能力提升路径_长期防护思维说明【指导】  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  如何解决hover在ie6中的兼容性问题  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel如何与Pusher实现实时通信?(WebSocket示例)  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  JavaScript如何实现错误处理_try...catch如何捕获异常?  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  nodejs redis 发布订阅机制封装实现方法及实例代码  零基础网站服务器架设实战:轻量应用与域名解析配置指南  想要更高端的建设网站,这些原则一定要坚持!  网页设计与网站制作内容,怎样注册网站?  用v-html解决Vue.js渲染中html标签不被解析的问题  Laravel如何创建自定义Artisan命令?(代码示例)  如何在腾讯云服务器快速搭建个人网站?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  香港服务器部署网站为何提示未备案?  原生JS实现图片轮播切换效果