用JAVA实现简单的绘画操作

用JAVA实现简单的绘画操作

1.基本操作

1.创建JFrame窗口

JFrame ck = new JFrame();

2.设置窗口大小

ck.setSize(800, 900);

3.设置窗口居中显示

ck.setLocationRelativeTo(null);

3.设置窗口关闭的操作

ck.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

2.画板类

这段代码展示了如何创建一个简单的 Java 程序来绘制图形界面。它使用了 Java 的 Swing 库,其中包含了用于创建窗口和界面的类和方法。

具体来说,这段代码创建了一个名为 “MyHuiHua” 的类,其中包含了一个名为 “main” 的静态方法。在这个方法中,我们首先创建了一个 JFrame 对象,设置了它的大小和位置,并指定了关闭窗口时的操作。然后,我们创建了一个自定义的 JPanel 类 Mypanel 对象,并将它添加到 JFrame 中。最后,我们设置 JFrame 的可见性为 true,使其显示在屏幕上。

Mypanel 类继承了 JPanel 类,重写了它的 paint 方法,该方法被用来绘制图形。在 paint 方法中,我们使用 Graphics 对象完成了一些基本的绘画操作,例如绘制直线,矩形和椭圆。我们还使用 setColor 方法设置了画笔颜色,并使用 fillRect 和 fillOval 方法绘制了实心的矩形和椭圆。

总的来说,这段代码展示了如何使用 Java Swing 库来创建简单的图形界面,并且演示了如何使用继承来扩展 JPanel 类的功能,实现自定义的绘画操作。

package com.game.xianjian;

import javax.swing.*;
import java.awt.*;

public class MyHuiHua {
    
    public static void main(String[] args) {
        // 创建 JFrame 对象
        JFrame ck = new JFrame();
        // 设置窗口大小
        ck.setSize(800, 900);
        // 窗口居中显示
        ck.setLocationRelativeTo(null);
        // 设置关闭窗口的操作
        ck.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
        // 创建画板对象
        Mypanel myhb = new Mypanel();
        // 将画板添加到 JFrame 对象中
        ck.add(myhb);
    
        // 显示 JFrame 窗口
        ck.setVisible(true);
    }
}

// 自定义画板类,继承 JPanel 类,重写其 paint 方法实现绘画操作
class Mypanel extends JPanel {
    
    // 重写绘画操作
    @Override
    public void paint(Graphics g) {
        // 使用 Graphics 对象完成绘画操作,绘制直线,矩形和椭圆
        g.drawLine(100, 100, 300, 300);
        g.drawRect(100, 100, 60, 80);
        g.drawOval(300, 300, 80, 100);
    
        // 设置画笔颜色
        g.setColor(Color.BLUE);
    
        // 绘画实心矩形和椭圆
        g.fillRect(150, 150, 60, 80);
        g.fillOval(350, 350, 80, 100);
    }

3.彩蛋

这是一个抽象派画家画的鸽鸽

package com.game.xianjian;

import javax.swing.*;
import java.awt.*;

public class MyHuiHua {
    public static void main(String[] args) {
        JFrame ck = new JFrame();
        ck.setSize(800, 800);
        ck.setLocationRelativeTo(null);
        ck.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Mypanel myhb = new Mypanel();
        ck.add(myhb);

        ck.setVisible(true);
    }
}
class Mypanel extends JPanel {
    @Override
    public void paint(Graphics g) {
        Graphics2D g2d = (Graphics2D) g;
        g2d.setColor(new Color(0xffd633)); // 设置填充颜色
        g2d.setStroke(new BasicStroke(20)); // 设置边框宽度
        g2d.fillOval(getWidth() - 600, getHeight() - 600, 450, 450); // 填充圆形
        g2d.setColor(Color.BLACK); // 设置边框颜色
        g2d.drawOval(getWidth() - 600, getHeight() - 600, 450, 450); // 绘制边框

        g2d.drawOval(getWidth() - 350, getHeight() - 500, 100, 125); // 绘制边框
        g2d.drawOval(getWidth() - 500, getHeight() - 500, 100, 125); // 绘制边框
        g2d.setColor(Color.WHITE);
        g2d.fillOval(getWidth() - 335, getHeight() - 490, 70, 95); // 填充圆形
        g2d.fillOval(getWidth() - 485, getHeight() - 490, 70, 95); // 填充圆形

        g2d.setColor(Color.RED);
        g2d.fillOval(getWidth() - 550, getHeight() - 350, 100, 100); // 填充圆形
        g2d.fillOval(getWidth() - 300, getHeight() - 350, 100, 100); // 填充圆形

        g2d.setColor(Color.GRAY); // 设置线条颜色为灰色
        g2d.drawLine(150, 350, 400, 110); // 画一条从左下角到右上角的线条
        g2d.drawLine(650, 350, 400, 110); // 画一条从左下角到右上角的线条
    }
}

在这里插入图片描述

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值