层次菜单的制作(二)
层次菜单控制部分的制作
首先我们进行整体控制的制作。在control层的第一桢设置动作为:Stop(),并且生成一个新的关键桢2设置LABEL为showsub。
现在以mainbutton为活动层。我们知道主菜单的作用就是当鼠标经过或点击后显示它所包含的子菜单。因此,对于它的动作我们要达到在鼠标点击它时影片前进到显示子菜单的那一桢。因此我们设置main按钮的动作如下:
On (Release)
Go to and Stop ("showsub")
End On
其中, 标记为“showsub”的桢就是对应于整个菜单显示的桢。
以subbutton层为活动层。我们试想当鼠标点击了子菜单中的某一个后,会发生什么呢?当然是整个子菜单要全部隐藏起来,也就是说回复到不显示子菜单的第一桢了。设置每个子菜单行为如下:
On (Release)
Go to and Stop (1)
End On
改进工作
到这里我们以可以进行测试了!看看你的菜单有什么问题?当你的鼠标离开菜单区域会发生什么问题呢?菜单无法消隐!
针对子菜单的消隐问题,一般的最简单解决方法是使用一个按钮来得到鼠标离开菜单区域这一事件,并进行消隐操作。这里我们使用了一个矩形按钮并且放置在invibutton层上。对这个invibutton进行缩放使它稍微大于整个菜单区域。对invibutton这个按钮赋予相应的行为:
On (Roll Over)
Go to and Stop (1)
End On
另外一个问题,即菜单回馈问题我们这里使用一种比较简单的解决方案:变量设置。在每个子菜单对应的按钮中设置相应的行为为:
Set Variable: "/:out" = "你选择了第n个教程!祝贺你,这是一个明智的选择!"
其中变量out为主时线上的一个变量名称,这里我们使用了EditableTextFeild来进行输出(使用方法以及设置方法略)。这样我们就可以从菜单得到相应的反馈了!
到这里我们的教程基本结束了,下面的工作就是将track的一个实例放置到相应的场景中并根据相应的反馈来进行不同的跳转、处理等等了。