点击上方“蓝字”关注本公众号 恭 新 贺 年 小博老师解析Java核心技术 JSwing绘图技术 ○ [引言] 我们在学习Java编程的时候,如果需要开发客户端窗体类型的程序,可以使用JDK中的awt和swing库。本文开始小博老师就继续为大家演示Java窗体编程中的绘图技术,今天主要讲解绘图技术的基本使用方式。
[步骤阅读一]绘图技术基础知识 Java中的绘图技术,主要指的是通过代码在界面中绘制图形,因为有的时候我们需要的图形并不是一成不变的,它可能随着数据、时间、环境等各类因素而随时改变,比如验证码、头像截图、占比饼图、数据柱状图、水印图片等等场景。因此我们不能在界面中显示某张固定的现成图片,而是要根据需要使用算法绘制一张临时图片。 Java中的绘图技术主要使用java.awt.Graphics类来实现,其中封装了很多我们经常需要使用的绘图方法。 [步骤阅读二]基本绘图方法使用 在JSwing窗体中的各类控件,都拥有一个方法: void paintComponent(Graphics g) 这个方法是控件绘制界面时的调用方法,其中参数Graphics就是界面传递过来的绘图对象。我们可以在这个方法中利用绘图对象绘制我们想要的图形。 接下来小博老师就为大家演示一下绘制直线的方式,核心代码如下: publicclass GraphicFrameextends JFrame{ public GraphicFrame(){ super("博为峰教育"); setBounds(200,100, 600, 400); setLayout(null); // 实例化 自定义Panel派生类对象 panel = new BWFPanel(); panel.setBounds(0,0, 585, 362); add(panel); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } private BWFPanel panel; }
publicclass BWFPanelextends JPanel{ // 重写 绘制界面方法 protectedvoidpaintComponent(Graphics g) { super.paintComponent(g); // 设置 笔触颜色 g.setColor(Color.RED); // 绘制 直线 g.drawLine(0, 0, 100,200); } } 实例化窗体对象并且运行后,效果如下: 接下小博老师再给大家演示一下如何绘制矩形,核心代码如下: publicclass BWFPanelextends JPanel{ // 重写 绘制界面方法 protectedvoidpaintComponent(Graphics g) { super.paintComponent(g); // 设置 笔触颜色 g.setColor(Color.RED); // 描边 矩形 g.drawRect(50, 50, 200,200); // 填充 矩形 g.fillRect(280, 50,200, 200); } } 实例化窗体对象并且运行后,效果如下: 最后小博老师再给大家演示一下如何绘制圆形,核心代码如下: publicclass BWFPanelextends JPanel{ // 重写 绘制界面方法 protectedvoidpaintComponent(Graphics g) { super.paintComponent(g); // 设置 笔触颜色 g.setColor(Color.RED); // 描边 圆形 g.drawOval(50, 50, 200,200); // 填充 圆形 g.fillOval(280, 50,200, 200); } } 实例化窗体对象并且运行后,效果如下: 本文转载于微信公众号: 博为峰51Code软件开发(BWF-EDUCATION),更多微信文章请扫描关注公众号: |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|