制作Authorware多级子选单详解

在Authorware中利用选单交互很容易制作一个标准的Windows风格的选单,而用Authorware来制作子选单却是一件相当麻烦的事;但是如果使用Control u32 for Authorware这个UCD,上面这个问题将比较容易解决。这个UCD的文件名为tMsControls.u32(tMsControls.u32是Mediashoppe提供的一个免费的函数库,其功能非常强大),它可以允许用户使用如下一些通用Windows控制:



  ●下拉列表



  ●弹出式快捷选单



  ●选择文件对话框



  ●字体下拉列表



  ●带预览功能的图形文件打开对话框



  ●带预览功能的图形文件保存对话框



  下面利用tMsControls.u32来制作子选单,主要是利用tMsControls.u32中的tMsCreatePopupList、tMsDisplayControl、tMsAddItem这三个函数实现子选单的功能。其实现过程如下。



  ●取得Windows句柄:popupHandle:=tMsCreatePopupList(WindowHandle)。



  ●设置选单内容:Result:=tMsAddItem(ControlHandle,menuItemNo,submenuItemNo, menuText),其中参数ControlHandle是控制句柄的变量名,这里是popupHandle;参数menuItemNo是选单内容中的排列顺序;参数submenuItemNo的作用是设置子选单,如“0”表示是一级选单,“1、2、3......”表示二级选单;参数MenuText是设置选单显示内容,其中分隔线用“-”。



  ●设置选单显示位置:Result:=tMsDisplayControl(ControlHandle, X, Y, Width, Height, Return),其中参数ControlHandle是控制句柄的变量名;参数X、Y分别表示水平和垂直位置;参数Windth、Height分别表示选单的宽和高;Return表示返回值。



  ●最后判断变量的返回值,根据不同的返回值做相应的处理,如if(result=“退出”) then quit(0)。



  下面给出一个具体实例,详细地讲述子选单的制作。



制作Authorware多级子选单详解
图1




  1.新建一个文件,保存为“子选单.a5p”,设置该文件属性,把其中的“Menu Bar”选项勾去掉,然后在流程线上放置一个显示图标,自己设置一选单条,用一灰色图片放在展示窗口的选单区域,再写上“文件”。



  2.导入tMsControls.u32中的三个函数。



  3.在流程线上添加一个交互图标,命名为“tMsControls”,然后在其右侧放置一个计算图标,命名为“Submenu”,响应方式设置为热区交互,目的是使点击“文件”后出现相应的选单。



  4.双击“Submenu”计算图标,输入如图1所示的内容。



制作Authorware多级子选单详解
图2




  5.至此,实例程序设计、制作完毕,保存该文件。



  运行该文件,其运行结果如图2所示。



  这样,一个实用、漂亮的二级子选单就做好了。利用该种方法制作子选单要注意的有两点:



  (1)弹出一级子选单后,如果没有单击任何选单选项,此时的返回值为该子选单的最后一个选单内容,在该实例中为“-”;



  (2)单击第二级子选单后所返回的值不仅包含本身的子选单名,而且包含了一级子选单名,如“zsb1”子选单响应后所返回的值为“新建:zsb1”。