如何用JavaFx开发一个拼图游戏应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1423个文字,预计阅读时间需要6分钟。
最近学习JavaFx,发现网上大致只有官方文档可查阅,学习资料较少。于是,我决定写一个拼图游戏来记录学习过程。
思路概述:
1.面板的构建:使用GridPane布局,方便3x3的图片布局。
2.每个小格子中包含图片块。
最近学习JavaFx,发现网上大概只有官方文档可以查阅,学习资料较少,写个拼图游戏供记录。。
大概说一下思路:
1.面板的构建:面板采用GridPane,方便3*3的图片布局。
2.每个小格子中的图片当然不是一张张手工切好的,利用imageview.setViewPort(Rectangle2D 2d)的方法进行切割。
3.再来说鼠标点击时图片的移动,这时候以里面的空格子为中心,不以鼠标点击的那个事件源为中心,这样可以避免走弯路(当时我是有一种柳暗花明的感觉。)。
4.鼠标点击后空格子和其周围带图片格子的交换就比较简单了,重新设置位置即可。
5.每交换一次检查是否拼图成功。
关于界面初始化:定义一个ImageView的数组,长度为9,将其按顺序分别为第1,2,3....个格子,然后再产生8个0-8的不重复并且逆序数为偶数的随机数的数组,然后将此随机数作为ImageView数组的下标,将ImageView顺序排列在格子中。
本文共计1423个文字,预计阅读时间需要6分钟。
最近学习JavaFx,发现网上大致只有官方文档可查阅,学习资料较少。于是,我决定写一个拼图游戏来记录学习过程。
思路概述:
1.面板的构建:使用GridPane布局,方便3x3的图片布局。
2.每个小格子中包含图片块。
最近学习JavaFx,发现网上大概只有官方文档可以查阅,学习资料较少,写个拼图游戏供记录。。
大概说一下思路:
1.面板的构建:面板采用GridPane,方便3*3的图片布局。
2.每个小格子中的图片当然不是一张张手工切好的,利用imageview.setViewPort(Rectangle2D 2d)的方法进行切割。
3.再来说鼠标点击时图片的移动,这时候以里面的空格子为中心,不以鼠标点击的那个事件源为中心,这样可以避免走弯路(当时我是有一种柳暗花明的感觉。)。
4.鼠标点击后空格子和其周围带图片格子的交换就比较简单了,重新设置位置即可。
5.每交换一次检查是否拼图成功。
关于界面初始化:定义一个ImageView的数组,长度为9,将其按顺序分别为第1,2,3....个格子,然后再产生8个0-8的不重复并且逆序数为偶数的随机数的数组,然后将此随机数作为ImageView数组的下标,将ImageView顺序排列在格子中。

