关于java拼图游戏的问题 高手进

来源:百度知道 编辑:UC知道 时间:2024/06/07 13:20:35
这是我做的一个拼图小游戏,是把图片放到按钮上了,问题是怎么判断最后拼了完整的图?

import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
import java.util.Set;

import javax.print.attribute.standard.Media;
import javax.swing.AbstractButton;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;

public class Pintu extends JFrame implements ActionListener{
Image img;
Icon img1;
BufferedImage bimg;
BufferedImage[] subimg;
int width,height;
JButton[] jb;
public Pintu(){
this.setLayout(new GridLayout(3,3));
img=this.getToolkit().getImage("F:\\JAVA\\eclipse文件\\pi

你的代码没有注释,实在不想看.

按钮和小图片的匹配不会写? 把小图片和按钮按里面的编号都取出来,分别组成2个字符串,然后用equals()方法来实现匹配.

建议把小图片和按钮都放在table里面,这样比较好操作.

我以前做的时候,在每个"拼图部分"里面都是有一个字符串作为编号的,鼠标点击单元格的图片的时候(比如该单元格在表格坐标是(m,n) ),则取(m+1,n),(m-1,n),(m,n+1),(m,n-1),四个单元格,检查里面是不是有"拼图部分",如果全都有,就return,如果有空格,就传点击的这个"拼图部分"进去,删除当前单元格的"拼图部分",然后把所有"拼图部分"的编号拿出来匹配.

这样做的话好像比较容易
PS:代码拿出来给别人看的时候要写注释,这个是很必须的习惯!!!

楼上说的纯属胡说八道,你见过9个拼图部分中只要A块回到原来的位置就成功的游戏么?

把最开始的成功的图片所在的位置编号然后打乱后,当所有的图片对应的编号都相同了就成功了
比如 一个图片分为9块,第一块标A, 当打乱后,在回到A事就成功.,..
呵呵你可以找个程序看看