JAVA用画板JFrame画布Panel画笔Graphics画一个星星,可拖动-3

更改版本之后为JFrame+JPanel

效果图1:


效果图2:



/**
 * @author-程前
 * @version-star1.2.3
 * @note-画一个*,然后通过拖动,显示拖动的痕迹,造成炫酷的效果
 * */
public class Star3 {
    static int x=300;
    static int y=400;
    public static void main(String[] args) {
        //实例化画板
        JFrame f=new JFrame();
        //设置画板大小
        f.setSize(1400,900);
        //实例化画布
        Mypanl m=new Mypanl();
        //设置画布背景颜色为黑色
        m.setBackground(Color.BLACK);
        //添加鼠标拖动事件监听
        m.addMouseMotionListener(m);
        //将画布放到画板上
        f.add(m);
        //展示画板
        f.setVisible(true);
    }
    static class Mypanl extends JPanel implements MouseMotionListener{
        /*
         * 重写画布的绘画方法,里面有一个画笔参数*/
        @Override
        public void paint(Graphics g) {
            super.paint(g);
            //设置画笔颜色
            g.setColor(Color.WHITE);
            //设置画笔大小
            g.setFont(new Font(null, 0,50));
            //循环花100个星星
            g.drawString("*",x,y);
        }
        /**
         * @note 鼠标点击状态下拖动
         * */
        @Override
        public void mouseDragged(MouseEvent e) {
          //下面三行代码可形成图1效果
            x=e.getX()-10;
            y=e.getY()+28;
            repaint();
        }
        /**
         * @note 鼠标未点击状态下拖动
         * */
        @Override
        public void mouseMoved(MouseEvent e) {
          //下面三行代码可形成图2效果
//          x=e.getX()-10;
//          y=e.getY()+28;
//          repaint();
        }
    }
}

基础篇:

JAVA用画板JFrame画布Panel画笔Graphics画漫天不停的跑的星星-1

JAVA用画板JFrame画布Panel画笔Graphics画100个星星可以任意拖拽-2

升级篇:

JAVA用画板JFrame画布Panel画笔Graphics画100个星星可以任意拖拽,可以按上下左右控制字或者月亮的移动,shift控制移动字还是月亮-end版

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值