//
.;
import ;
import ;
/*
* 图片小方格类
*/
public class Cell extends JButton {
//带有图片的小方格
public Cell(Icon icon) {
super(icon);
//设置小方格大小
(150, 150);
}
//带有图片和文字的小方格
public Cell(String text, Icon icon) {
super(text, icon);
//设置小方格大小
(150, 150);
(CENTER);//设置文字水平居中显示
(CENTER);//设置文字垂直居中显示
}
//
public void move(String direction) {
switch (direction) {
case "UP":
(().x,().y-150);
break;
case "DOWN":
(().x,().y+150);
break;
case "LEFT":
(().x-150,().y);
break;
case "RIGHT":
(().x+150,().y);
break;
default:
break;
}
}
}
//
.;
import ;
import ;
import ;
import ;
import ;
import ;
/*
* 拼图类
*/
public class PictureCanvas extends JPanel implements MouseListener {
//静态变量
public static int pictureID = 1;//图片ID
public static int stepNum = 0;//步数
private Cell[] cell;
private boolean hasAddActionListener = false;//表示是否为小方格添加了点击监听,有为true
private Rectangle nullCell;
//构造方法
public PictureCanvas() {
initCanvas();
}
//初始化
public void initCanvas(){
//设置拼图区的位置
(null);//帧布局
//创建12个小方格,并添加到拼图区
cell = new Cell[12];
for(int i = 0;i < 4;i++){
for(int j = 0;j < 3;j++){
//加载图片
int num = i*3+j;
ImageIcon icon = new ImageIcon("picture/"+pictureID+"_"+(num+1)+".gif");
//创建图片小方格
cell[num] = new Cell(icon);
//指定显示位置
cell[num].setLocation(150*j+20, i*150+20);
//把图片小方格添加到拼图区
(cell[num]);
}
}
//删除第12个小方格
(cell[11]);
nullCell =
java拼图游戏完整代码 来自淘豆网m.daumloan.com转载请标明出处.