练习 99 拼图
本例知识点 一句话讲解
新学
知识
使用 Image 类 导入图片
使用 MouseEvent 类 处理鼠标事件
已学
知识
使用 Point 类 转换坐标
使用 Graphics 类 管理屏幕显示
一、练习具体要求
本练习制作拼图游戏,运行效果如图 99-1 所示。执行本实例后,用鼠标拖动选中的小
图 片进行拼接, 可以 拼 成 一 幅 完整 的 图 片 。 本实 例 的 知 识 点有 : 鼠 标 事 件的 监 听 ,
Graphics 类和 Image 类的应用。
二、程序及注释
(1)编程思路:本练习因为要制作拼图游戏,所以首先要实现图片的导入。这是通
过 getImage()函数来实现的,该函数有两个参数,第一个参数指明图片的路径,第二个
参数指明图片的名称。然后,因为要实现图片摆放的随意性,所以要通过 initgame()函数
来实现。Initgame()函数是自写函数,在函数体内,通过调用 Math.random()函数产生
随机数,用来达到图片位置摆放的随意性和随机性。最后,因为要实现人机交互.,所以首
先 要 通 过 一 系 列 函 数 来 实 现 对 鼠 标 事 件 的 监 听 和 响 应 , 这 是 通 过 函 数
addMouseListener(this) 和 addMouseMotionListener(this)来完成的。这样程序会区
分用户对鼠标不同的操作,正确执行相应的功能。
(2) 程序实现及注释:
import java.awt.*;
import java.applet.*;
import java.awt.event.* ;
public class pintu extends Applet implements
MouseListener,MouseMotionListener
{
private Image picture;
private Graphics buffer;
private Image pic[];
private Image off_pic[];