内容正文:
VB程序设计实战
1
编写九宫格拼图游戏程序
什么是VB程序设计实战?
3
素材准备:用Photoshop或其他图像处理软件制作九个图像文件P1.jpg,P2.jpg…P9.jpg,除一张为空白外,图片上依次显示A~H八个字母。
4
2
游戏分析
拼图板:可以看作是一个三乘三的表格,有a、b、c三行和L1、L2、L3三列。
那么各个格子可以按照行列分别表示为a1、a2、a3、b1、b2、b3、c1、c3。为了更明确表达格子位置的顺序关系,分别标号为0、1、2、3、4、5、6、7、8。
八张图片:是有顺序的,可以分别表示为A、B、C、D、E、F、G、H。
6
排序成功:就是罔片按顺序排入格位,格位与图片顺序的对应关系为:A-0、13-1、C-2、D—3、E-4、F—5、G-6、H—7、0-8。
游戏过程:先把各图片和空格的对应顺序打乱排列,然后游戏者开始借助空格沿行或列移动图片,直到图片按照顺序排列到九宫格中。只有与空格相邻的图片才可以移动。
7
图片只能移到邻近空格,也就是空格在当前图;片邻近行或列。图片移动的必要条件是空位在目标位置,或表示为0图片在目标位置。
图片移位特征分析
8
可能情况1:
h、c两行内的图片,有向上移动一格的可能,即:可能从标号为3、4、5、6、7、8的位置对应移到0、1、2、3、4、5的位置。位置标号减3。
这种情况表达为:图片X在N位置,时,N-3的位置为0图片(即空位),图片X与图片0可以交换位置(即图片X移到空位)。也就是,N为3时,0在N-3时,则X到N-3,0到N。
按照行列关系分析图片移动可能性
9
可能情况2:
a、h两行内的图片,有向下移动一格的可能,即:可能从标号为0、1、2、3、4、5的位置对应移到3、4、5、6、7、8的位置。位置标号加3。
这种情况表达为:图片X在N位置,N≤5时,N+3的位置为0图片(即空位),图片X与图片0可以交换位置(即图片X移到空位)。
也就是,N≤5时,0在N+3时,则X到N+3,0到N。
按照行列关系分析图片移动可能性
10
可能情况3:
L2、L3两列内的图片,有向左移动一格的可能,即:可能从标号为1、4、7、2、5、8的位置对应移到0、3、6、1、4、7的位