Java重修笔记 第五十三天 坦克大战(一)绘图入门

  • 绘制简单的图形
1. 创建画板

        定义一个画板类,通过继承 JPanel 类来创建画板

2. 创建画笔

        在画板类中调用 paint 方法,并传入一个 Graphics g 对象,通过对 g 对象的操作来实现画画的过程

3. 开始作画

        调用 Graphics g 对象的方法在 paint 方法中作画

4. 创建画框

        定义一个框架类,通过继承 JFrame 类来创建一个框架,让 JPanel 画板能够在此框架中显示出来

5. 初始化面板

        在 JFrame 框架类中定义一个 JPanel 画板对象作为属性,并在 JFrame 类的构造方法中给 JPanel 画板对象开辟空间,即初始化面板

6. 将初始化好的面板放入画框

        在 JFrame 框架类的构造方法中初始化好 JPanel 对象后,调用框架类继承过来的add方法,将 JPanel 对象加入到该框架类中

7. 设置画框格式

        在构造方法中调用框架类继承过来的setSize方法、setVisiable方法、setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)方法来设置画框大小,是否可显示,按退出键退出程序等

8. 初始化框架

        new 框架类就能显示内容了

代码演示:

// 第四步: 创建画框
public class DrawCircle extends JFrame {
    
    private MyPanel mp;

    public static void main(String[] args) {
        // 第八步: 初始化框架
        new DrawCircle();
    }

    public DrawCircle() {
        // 第五步: 初始化面板
        mp = new MyPanel();
        // 第六步: 将初始化好的面板放入画框
        this.add(mp);
        // 第七步: 设置画框格式
        this.setSize(400,300);
        this.setVisible(true);
    }
}

// 第一步: 创建画板
class MyPanel extends JPanel {
    // 第二步: 创建画笔
    @Override
    public void paint(Graphics g) {
        super.paint(g);
        // 第三步: 开始作画
        g.drawOval(10, 10, 100, 100);
    }
}

运行结果:

  • paint 方法被调用的几种情况

1. 组件第一次显示

2. 窗口最小化再最大化

3. 窗口大小发生变化

4. repaint 方法主动刷新组件外观

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值