练习 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[];