完成效果:

 1 package com.neuedu.test;
2
3 import java.awt.Frame;
4 import java.awt.Graphics;
5 import java.awt.event.WindowAdapter;
6 import java.awt.event.WindowEvent;
7
8 import com.neuedu.utill.GameUtill;
9
10 public class TaiQiu extends Frame {
11 public void loadFrame () {
12 setLocation(100, 100);
13 setSize(800,600);
14 setTitle("台球");
15 setResizable(false);
16 setVisible(true);
17 addWindowListener(new WindowAdapter() {
18
19 @Override
20 public void windowClosing(WindowEvent e) {
21 // TODO Auto-generated method stub
22 System.exit(0);
23 }
24
25 });
26 }
27 @Override
28 public void paint(Graphics g) {
29 // TODO Auto-generated method stub
30 g.drawImage(GameUtill.getImage("com/neuedu/img/zhuomian.png"),10,50,null);
31 g.drawImage(GameUtill.getImage("com/neuedu/img/0.png"),200,200,20,20,null);
32 g.drawImage(GameUtill.getImage("com/neuedu/img/1.png"),250,200,20,20,null);
33 g.drawImage(GameUtill.getImage("com/neuedu/img/2.png"),200,250,20,20,null);
34 g.drawImage(GameUtill.getImage("com/neuedu/img/3.png"),300,350,20,20,null);
35 g.drawImage(GameUtill.getImage("com/neuedu/img/4.png"),400,180,20,20,null);
36 g.drawImage(GameUtill.getImage("com/neuedu/img/5.png"),500,200,20,20,null);
37 g.drawImage(GameUtill.getImage("com/neuedu/img/6.png"),650,200,20,20,null);
38 g.drawImage(GameUtill.getImage("com/neuedu/img/7.png"),480,200,20,20,null);
39 g.drawImage(GameUtill.getImage("com/neuedu/img/8.png"),580,300,20,20,null);
40 g.drawImage(GameUtill.getImage("com/neuedu/img/9.png"),360,300,20,20,null);
41 g.drawImage(GameUtill.getImage("com/neuedu/img/10.png"),550,350,20,20,null);
42 g.drawImage(GameUtill.getImage("com/neuedu/img/11.png"),350,250,20,20,null);
43 g.drawImage(GameUtill.getImage("com/neuedu/img/12.png"),300,400,20,20,null);
44 g.drawImage(GameUtill.getImage("com/neuedu/img/13.png"),400,300,20,20,null);
45 g.drawImage(GameUtill.getImage("com/neuedu/img/14.png"),200,250,20,20,null);
46 g.drawImage(GameUtill.getImage("com/neuedu/img/15.png"),100,200,20,20,null);
47
48
49 }
50 public static void main(String[] args) {
51 TaiQiu tq = new TaiQiu();
52 tq.loadFrame();
53 }
54 }
 1 package com.neuedu.utill;
2
3 import java.awt.Image;
4 import java.awt.image.BufferedImage;
5 import java.io.IOException;
6 import java.net.URL;
7
8 import javax.imageio.ImageIO;
9
10 public class GameUtill {
11 public static Image getImage (String imgPath) {
12 URL u = GameUtill.class.getClassLoader().getResource(imgPath);
13 BufferedImage img = null;
14 try {
15 img = ImageIO.read(u);
16 } catch (IOException e) {
17 // TODO Auto-generated catch block
18 e.printStackTrace();
19 }
20 return img;
21
22 }
23 }

Java GUI 简单台球游戏模型的更多相关文章

  1. java实现简单扫雷游戏

    /** * 一个简单的扫雷游戏 MainFram.java */ package www.waston; import java.awt.BorderLayout; import java.awt.C ...

  2. java GUI简单记事本

    代码: import java.awt.*; import java.awt.event.*; import java.io.*; class MyMenu { //定义该窗体所需的组件,方便其他函数 ...

  3. Java GUI学习,贪吃蛇小游戏

    JAVA GUI练习 贪吃蛇小游戏 前几天虽然生病了,但还是跟着狂神学习了GUI的方面,跟着练习了贪吃蛇的小项目,这里有狂神写的源码点我下载,还有我跟着敲的点我下载,嘿嘿,也就注释了下重要的地方,这方 ...

  4. 写了一个Java的简单缓存模型

    缓存操作接口 /** * 缓存操作接口 * * @author xiudong * * @param <T> */ public interface Cache<T> { /* ...

  5. java实现简单窗体小游戏----球球大作战

    java实现简单窗体小游戏----球球大作战需求分析1.分析小球的属性: ​ 坐标.大小.颜色.方向.速度 2.抽象类:Ball ​ 设计类:BallMain—创建窗体 ​ BallJPanel—画小 ...

  6. 台球游戏的核心算法和AI(1)

    前言: 08年的时候, 写过一个台球游戏, 用的是java, 不过代码真的是用传说中的神器notepad写的(你信吗? 其实是用GVIM写的, ^_^), 很多类都在同一java文件中编写. 可见当时 ...

  7. 台球游戏的核心算法和AI(2)

    前言: 最近研究了box2dweb, 觉得自己编写Html5版台球游戏的时机已然成熟. 这也算是圆自己的一个愿望, 一个梦想. 承接该序列的相关博文: • 台球游戏核心算法和AI(1) 同时结合htm ...

  8. 基于Java的开源3D游戏引擎jMonkeyEngine

    jMonkeyEngine简介 jMonkeyEngine是一款纯Java语言编写的游戏引擎,继承了Java应用跨平台的特性,而且是开放源代码的,遵循BSD开源协议,BSD开源协议用一句简单的话概括就 ...

  9. Java一个简单的贪吃蛇

    Java一个简单的贪吃蛇 虽然GUI已经要淘汰了,但是手动写写界面还是有助于理解语法的,像构造函数 ,函数调用,内部类,继承,接口.有助于半初学者强化理解. 直接上代码 游戏主体类: package ...

随机推荐

  1. 编写Java程序,遍历所有英雄信息(美和易思JDBC,PreparedStatement执行查询语句练习习题)

    返回本章节 返回作业目录 需求说明: 继续完善英雄信息系统.使用JDBC技术,通过PreparedStatement对象的executeQuery()方法获取表示所有英雄数据的ResultSet结果集 ...

  2. Java_Swing中关于关闭窗口的方法

    注意:在继承Jframe的过程中,由于工具的快捷功能可以会继承到Frame类,继承到Jframe类打开的窗口默认是可以关闭的,而Frame类打开的窗口点了关闭的没有反应的. 1.关闭子窗口后,父窗口也 ...

  3. Oracle 系统函数

      函数名称 返回值类型 说明 示例 字符串函数 ascii(str) number 返回str首字母的ASCII码 select ascii('A') from dual; --65select a ...

  4. PostgreSQL相关知识概念

    本文主要介绍PostgreSQL数据库的一些重要知识点, 包括数据库.模式.表空间.用户/角色等概念和关系, 帮助用户理解PostgreSQL数据库的重要概念, 从而能够更好的使用PostgreSQL ...

  5. SpringBoot 之 控制器层

    @Controller public class EmployeeController { @Autowired EmployeeDao employeeDao; @Autowired Departm ...

  6. Linux-saltstack-3 saltstack的grains和pillar的基本使用

    @ 目录 一.简介 二.grains 1.查看客户端所有的grains项 2.查看grains的所有的项和值 3.查看某个项和值 (1)语法1: (2)语法2: 4.根据grains来匹配目标主机 例 ...

  7. Python常用功能函数系列总结(三)

    本节目录 常用函数一:词频统计 常用函数二:word2vec 常用函数三:doc2vec 常用函数四:LDA主题分析 常用函数一:词频统计 # -*- coding: utf-8 -*- " ...

  8. synchronized锁升级详细过程

    java对象头由3部分组成: 1.Mark Word 2.指向类对象(对象的class对象)的指针 3.数组长度(数组类型才有) 重点是 Mark Word结构,下面以32位HotSpot为例: 一. ...

  9. 数据库锁(mysql)

    InnoDB支持表.行(默认)级锁,而MyISAM支持表级锁 本文着中介绍InnoDB对应的锁. mysql锁主要分为以下三类: 表级锁:开销小,加锁快:不会出现死锁:锁定粒度大,发生锁冲突的概率最高 ...

  10. [Android测试] Appium的一些坑问题错误解决 与 技巧集锦

    转:https://blog.csdn.net/niubitianping/article/details/52624417 1. error: Failed to start an Appium s ...