黑马程序员技术交流社区

标题: java画图进阶篇 使用键盘控制画出来的小球。 [打印本页]

作者: justinwww    时间: 2016-1-20 22:47
标题: java画图进阶篇 使用键盘控制画出来的小球。
import java.awt.* ;
import java.awt.event.* ;//老样子先引入相关包
public class MyBall {//定义小球类
        public static void main(String args[]){
                Frame w = new Frame() ;
                w.setSize(300 , 400) ;//尺寸       
                MyPanel mp = new MyPanel() ;//画布
                w.add(mp) ;//添加画布
                //注册事件
                w.addKeyListener(mp) ;//给画布和框架都添加监听事件  亲测不加会出问题
                mp.addKeyListener(mp) ;       
                w.show() ;//显示
        }
}

class MyPanel extends Panel implements KeyListener{//实现键盘监听接口
        int x = 30 ;//初始化x y 坐标
        int y = 30 ;
        public void paint(Graphics g){
                g.fillOval(x, y, 20, 20) ;//老样子 画小球
        }

        @Override
        public void keyPressed(KeyEvent arg0) {//这里是 主要代码 实现接口 重写几个方法  
                System.out.println (arg0.getKeyCode()) ;
                if(arg0.getKeyCode()==37){//判断  键盘 左
                        x -- ;
                }
                if(arg0.getKeyCode()==38){ //判断  键盘 下
                        y -- ;
                }
                if(arg0.getKeyCode()==39){
                        x ++ ; //判断  键盘 右
                }
                if(arg0.getKeyCode()==40){
                        y ++ ;//判断  键盘 上
                }
                repaint() ;
        }

        @Override
        public void keyReleased(KeyEvent arg0) {
               
        }

        @Override
        public void keyTyped(KeyEvent arg0) {
               
               
        }
}

说一下主要思路:很简单
画小球之前说过了 掠过
这里主要是实现了键盘监听的接口 重写几个方法  然后判断按的是键盘的  上下左右 键 做出相应的运动即可、


作者: black习    时间: 2016-1-20 22:54
我来顶一下,java gui貌似不太用了
作者: justinwww    时间: 2016-1-20 22:55
是的  都说java不适合 画图 但作为基础开始 学学还是很有用的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2