zoukankan      html  css  js  c++  java
  • JAVA 开发实例 一 移动的小球

    package com.java.move;
    
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.GraphicsConfiguration;
    import java.awt.HeadlessException;
    import java.awt.Toolkit;
    import java.awt.event.KeyAdapter;
    import java.awt.event.KeyEvent;
    
    import javax.swing.*;
    
    /*
     *
     * author : deng_hui_long 
     * Date   : 2013-10-16
     *
     */
    public class TextMove extends JFrame {
    	private int width = 500;// 窗口的宽度
    	private int height = 500;// 宽口的高度
    	private Toolkit took = null;// 将各个组件绑定
    	private TextPanel textPanel = null;
    
    	public static void main(String[] args) {
    		new TextMove().show();
    	}
    
    	public TextMove() {
    		setTitle("移动的小球");
    		took = Toolkit.getDefaultToolkit();
    		Dimension dm = took.getScreenSize();// 获取屏幕的 宽度和高度
    		int swidth = (dm.width - this.width) / 2;
    		int sheight = (dm.height - this.height) / 2;
    		setLocation(swidth, sheight);// 窗口居于屏幕中间
    		setSize(width, height);// 设置窗体的大小
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 关闭
    		textPanel = new TextPanel(10, 10);// 面板
    		add(textPanel);// 添加面板
    		addKeyListener(new Keyent());// 添加键盘事件
    	}
    
    	// 键盘事件
    	class Keyent extends KeyAdapter {
    		@Override
    		public void keyPressed(KeyEvent e) {
    			if (e.getKeyCode() == KeyEvent.VK_UP) {// 上
    				textPanel.y -= 5;
    			} else if (e.getKeyCode() == KeyEvent.VK_DOWN) {// 下
    				textPanel.y += 5;
    			} else if (e.getKeyCode() == KeyEvent.VK_LEFT) {// 左
    				textPanel.x -= 5;
    			} else if (e.getKeyCode() == KeyEvent.VK_RIGHT) {// 右
    				textPanel.x += 5;
    			}
    			textPanel.repaint();// 重新绘图
    		}
    	}
    
    	// 继承面板在面板上绘图
    	class TextPanel extends JPanel {// 继承面板
    		int x;
    		int y;
    
    		public TextPanel(int x, int y) {
    			this.x = x;
    			this.y = y;
    		}
    
    		public void paint(Graphics g) {// 在面板上绘图
    			super.paint(g);
    			g.setColor(Color.black);// 设置画笔的颜色
    			g.fillOval(x, y, 20, 20);// 画圆
    		}
    	}
    }
    


  • 相关阅读:
    异步运行
    ES6新增----深入理解generator
    ES6新增(箭头函数)
    ES6新增(有关变量)
    I2C写时序图[转]
    kernel中,dump_stack打印调用栈,print_hex_dump打印一片内存,记录一下
    http://man.linuxde.net/ 转
    Linux网络
    Linux基础:用tcpdump抓包(转)
    指针长度问题,不同架构的指针长度不同,可能32位,也可能64位,与unsigned long长度相同
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3373627.html
Copyright © 2011-2022 走看看