java编写拼图游戏程序,帮我编下代码!
二、课程设计内容1、设计题目:编写拼图游戏程序2、拼图游戏具用功能:所谓拼图游戏,是指将一个完整的图片分割成若干个规则的小图片,然后将这些小图片随机地拼在一起,然后由玩家...
二、课程设计内容
1、设计题目:编写拼图游戏程序
2、拼图游戏具用功能:
所谓拼图游戏,是指将一个完整的图片分割成若干个规则的小图片,然后将这些小图片随机地拼在一起,然后由玩家按照原图重新拼接出正确的图片。
三、设计思路
通过单击与空白网格相邻的网格,可以将该网格显示的图片移动到空白网格中,那么可以用一个按钮代表一个网格,然后让每个按钮显示一个小图片,最后将这些按钮添加到一个面板中,并让这个面板采用网格布局。
需要解决的问题:
(1)如何实现图片移动
(2)如何判断被单击的网格与空白的网格是否相邻
(3)如何实现图片的随机摆放 展开
1、设计题目:编写拼图游戏程序
2、拼图游戏具用功能:
所谓拼图游戏,是指将一个完整的图片分割成若干个规则的小图片,然后将这些小图片随机地拼在一起,然后由玩家按照原图重新拼接出正确的图片。
三、设计思路
通过单击与空白网格相邻的网格,可以将该网格显示的图片移动到空白网格中,那么可以用一个按钮代表一个网格,然后让每个按钮显示一个小图片,最后将这些按钮添加到一个面板中,并让这个面板采用网格布局。
需要解决的问题:
(1)如何实现图片移动
(2)如何判断被单击的网格与空白的网格是否相邻
(3)如何实现图片的随机摆放 展开
3个回答
展开全部
楼主说的是类似华容道的拼图吧
帮你写代码不太可能,给你我的思路吧
创建网格对象Grid(继承JButton可以响应单击事件)...这个对象主要有如下属性:
1.private int X//X坐标.
2.private int Y//Y坐标.
3.private Image img;//图片对象(如果这个属性为null则为空网格)
有如下方法:
1.public void reloadImg()//当网格所绑定的图片改变时,调此方法刷新图片
创建图片对象Image.有如下属性:
1.private String url;//图片URL
(1)如何实现图片移动
如A网格的图片要移至B网格.
B.img=A.img;
A.img=null;
A.reload();
B.reload();
(2)如何判断被单击的网格与空白的网格是否相邻
这个简单只有两种情况才是相邻的.
1.Y坐标相同,X坐标相差1
2.X坐标相同,Y坐标相差1.
(3)如何实现图片的随机摆放
假设你有8张图,分别命名为0.jpg - 7.jpg
那么我们就需要在0,1,2,3,4,5,6,7,8中随机抽取一个数(8代表空网格)
则你可以用Random类,用上一些运算就可以生成随机整数a,
然后遍历网格,将对应的a.jpg放到网格里
(生成一个url为a.jpg的Image对象,然后将网格的img属性设为这个Image对象)
当然这里还有很多细节的问题,比如生成的随机整数不能重复的问题.等等.可以HI我探讨,呵呵.......
帮你写代码不太可能,给你我的思路吧
创建网格对象Grid(继承JButton可以响应单击事件)...这个对象主要有如下属性:
1.private int X//X坐标.
2.private int Y//Y坐标.
3.private Image img;//图片对象(如果这个属性为null则为空网格)
有如下方法:
1.public void reloadImg()//当网格所绑定的图片改变时,调此方法刷新图片
创建图片对象Image.有如下属性:
1.private String url;//图片URL
(1)如何实现图片移动
如A网格的图片要移至B网格.
B.img=A.img;
A.img=null;
A.reload();
B.reload();
(2)如何判断被单击的网格与空白的网格是否相邻
这个简单只有两种情况才是相邻的.
1.Y坐标相同,X坐标相差1
2.X坐标相同,Y坐标相差1.
(3)如何实现图片的随机摆放
假设你有8张图,分别命名为0.jpg - 7.jpg
那么我们就需要在0,1,2,3,4,5,6,7,8中随机抽取一个数(8代表空网格)
则你可以用Random类,用上一些运算就可以生成随机整数a,
然后遍历网格,将对应的a.jpg放到网格里
(生成一个url为a.jpg的Image对象,然后将网格的img属性设为这个Image对象)
当然这里还有很多细节的问题,比如生成的随机整数不能重复的问题.等等.可以HI我探讨,呵呵.......
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |