一.制作思路:
导航菜单菜有三层:第一层是"SCHOOL"字样,代表互动学校;第二层有三个菜单,"OFFICE"、"MEDIA"、"VIRUS"
,分别代表"办公一族"、"多媒体"、"病毒专栏";"OFFICE"菜单下还有一层子菜单,分别为"ACCESS"、"EXCEL"、"WORD"
。点击第一层的 "SCHOOL" 菜单可以打开第二层的 "OFFICE"、"MEDIA"、"VIRUS" 菜单;点击第二层的
"OFFICE" 菜单可以打开第三层的 "ACCESS"、"EXCEL"、"WORD"菜单;点击第三层的每个菜单可以打开一个新页面,并在新页面中登录
"互动学校"的网址(http://www.ccidnet.com/school) ;第二层其他菜单没有制作下层菜单弹出功能,大家可以在学完本章后,按我们的方法试着制作其下层菜单。
根据上面的思路,我们至少需要七个按钮组件。
二.制作步骤:
(1).School 菜单组件(School):
A.新建按钮组件,在一般(Up)帧绘制一个圆角矩形,填充采用由白到蓝的渐变线型填充;然后用深蓝色输入"School"
字样,完成后再用新的字体 "Wingdings 3" 并输入 "4" 字体创建一个箭头符号,表示下层有菜单。如图一:

图一
提示:Wingding 字体主要是一些符号字体,键盘上输入的字母全变成了一个一个的图形符号,这些图形符号在许多图形处理软件中是通用的,都可以按这种输入字体的方法创建一些图形,非常方便。如
Webdings 字体的 D 是面小盾牌,F 是辆救护车,V 是辆公共汽车,T 则是火车图标。
B.在鼠标移上帧(Over)与鼠标按下帧(Down)插入关键帧,然后回到鼠标移上帧,并将工作区中的箭头符号由深蓝色改为褐色,如图二:

图二
本组件制作完成。
(2).其他菜单组件的制作:
按照 School 组件的制作方法,我们再做六个按钮组件,并将其上的字样分别改为 "Office"、"Media"、"Virus"、"Access"、"Excel"、"Word"
,另外,请注意第二层的菜单比第一层的菜单稍微小点;第三层的菜单又比第二层的稍微小点。完成后打开库窗口(Ctrl+L),此时的库窗口如图三:

图三
(3).在时间轴内安排菜单组件:
A.回到场景一(Scene 1),将 School 组件拖到第一帧工作区中偏左的位置,并在第
10 帧插入过渡帧(Frame),如图四:

图四
B.新建一层(Layer 2),在第 10 帧处拖入 "Office"、"Media"、"Virus"
三个组件,注意它们的位置,而且三个组件间不要出现空白间隔(为什么不能出现空白间隔?稍后你就明白了)。然后在第 15 帧插入过渡帧(Frame)。如图五:

图五
C.新建一层(Layer 3),在第 15 帧处拖入 "Access"、"Excel"、"Word"
三个组件,也请注意它们的位置,组件之间不要出现空白间隔。然后在第 20 帧处插入过渡帧(Frame)。如图六:

图六
现在的时间轴如图七:

图七
(4).为组件添加 Action(动作):
A.为三个关键帧命名以便进行调用:选中第一层的第一帧,在 Frame(帧)面板中将其标签(Label)设为
School ;选中第二层第 15 帧,将其标签设为 Office ;选中第三层第 20 帧,将其标签设为 Access
。完成后时间轴如图八:

图八
B.回到第一层第一帧,选中 School 组件后,打开 Action (动作)面板,在左边栏目中找到
Basic Action 项。如图九:

图九
C.双击该项后,在弹出的列表中找到 On Mouse Event(鼠标事件),双击,在弹出的属性面板中选中
Roll Over(鼠标移上)。如图十:

图十
D.在左边的项目栏找到 Go to 动作,并双击,然后在弹出的属性面板中,在
Type(类型)中选择 Frame Label(帧的标签);在 Frame(帧)输入框中输入 Office 字样;最后清除面板上的
"Go to and Play(跳至并播放)"选项。如图十一:

图十一
提示:上面动作的意思是,动画播放到第一层第一帧即 School 帧时,如果有鼠标移上按钮(Roll Over)的事件发生,那么动画直接跳转到第二层的
Office 帧;也就是说发生了该事件后,就会显示出 Office 帧上的菜单。由于清除了 Go to and play
选项,动画跳转后不会自动播放,而是停在那里,等待用户的下一步行动。
提示:为什么要清除 "Go to and Play"选项?你可以试着不清除该选项,看一下会有什么问题出现。
E.按照上面的设置方法,来到第二层的 Office 帧并以刚才的方法设置鼠标事件与跳转事件,不同的地主在于,Office
组件的鼠标事件是弹出第三层菜单,因此它应该跳转到第三层的 Access 帧上;而另外两个菜单由于没有下层菜单,所以不需跳转,可以不设任何事件;如果要跳转,也只能跳转到本帧,即
Office 帧。
F.来到第三层的菜单,它们并不是在 Flash 内部进行跳转,而是要打开一个新页面并在新页面跳转到互动学校,因此它们的
Action 有所不同。 选中 Access 组件,在 Action 面板上找到鼠标事件,然后在属性面板上勾选 Release(松开鼠标)选项。如图十二:

图十二
G.在 Action 面板左边的动作列表中选中 Get URL(获取 URL),双击后打开属性面板,在
URL 栏中输入要跳转的网址(http://www.ccidnet.com/school/),Window 栏是对打开方式进行设置,通过按键盘上的上下键进行选择,这里我们选
_blank ;最后是 Variables(参数),问我们是否传递参数,选择 Don't Send 。如图十三:

图十三
提示:上面动作的意思是,只要点击(Release) Access 按钮,就会在新打开的窗口中登录 http://www.ccidnet.com/school
网址,并且不传递参数。
现在已完成 Access 的动作设置。
H.按照上面的办法,为第三层另外两个按钮设置动作。
(5).进行测试:
按 Ctrl+Enter 键进行测试,效果如何?如果你仔细的话,你会发现有个问题:当鼠标移出所有菜单后,菜单不能回复原状,那么如何才能在鼠标移出后让菜单回复原状呢?
(6).让菜单回复原状:
前面的组件,都设置了鼠标移入事件,那么能不能做这样一个底层组件,它能覆盖整个工作区,当鼠标移入后会激发将菜单回复原状的事件;由于是底层,因此上面层有内容的地方(即那些菜单组件的范围区)就不是底层组件的有效范围了,当鼠标在这些区域时,只能激活上层菜单组件的活动,而不会激活底层组件的
Action 。
在 Flash 中,这种底层组件叫做底层感应组件,常常用来为鼠标移出各个按钮时将动画回复到初始状态。
制作方法:新建一个按钮组件,名字任意,然后进入工作区域。由于按钮不能为访问者看,只是作为热感应使用,所以按钮的颜色必须与背景颜色一样,这样才能溶入背景;其次,热感应按钮不需要制作
Up(一般)、Over(鼠标移上)、Down(鼠标按下)帧的内容,直接在 Hit(执行)帧制作内容就行了。这是因为热感应按钮是什么样子无关紧要,它只起一个热感应的作用,而且当它放在工作区后就一直处于执行状态。
进入 Hit(执行帧),由于我们的背景色是白的,所以绘制一个比较大的白色背景矩形,如图十四:

图十四
回到场景一(Scene 1),新建一层(Layer 4),将其拖到最底层,并将刚才制作的底层热感应组件放进去,然后通过调整大小,让其覆盖整个工作区,以便能在整个工作区中进行感应。另外,热感应组件放入工作区后呈浅蓝色,这是由于它一直处在
Hit(执行)状态的缘故。最后将此层延续到第 20 帧即在整个过程中发挥感应作作。此时的时间轴如图十五:

图十五
最后为热感应组件设置动作(Action):选中它后,在 Action 面板中选择
On Mouse Event(鼠标事件),在属性面板中选 Roll Over(鼠标移入)动作,然后在 Go to (跳转)动作中设置跳到第一层的
School 帧。注意不要勾选 Go to and play(跳至并播放)选项。如图十六:

图十六
提示:前面不是说过在安排子菜单时不要让子菜单间出现空白间隔吗?这就是避免鼠标在菜单上移动时移入菜单空白而激发热感应组件的
Action 。
(7).全部完成。
三.总结:
Flash 的 Action 功能非常强大,灵活地使用它们可以轻易制作出交互性极强的作品,上面我们举的例子算是一个非常简单的应用,目的无他,只是让大家对其使用有个感性的认识。有兴趣的朋友,可以专门就
Flash 的 ActionScript 进行学习,相信有了前面的基础,你的学习应该比较轻松了。