在Authorware中利用菜单交互很容易制作一个标准的windows风格的菜单,但在Authorware中却没有提供制作右键菜单的简单方法,.而是在随Authorware安装的UCD文件tMsControls.u32中提供了此种功能。
下面利用tMsControls.u32中的函数来建立一个右键菜单:
1.新建一个文件,文件名为tMsControls _Demo.a6p, 打开文件属性设置对话框,根据屏幕大小设置程序窗口大小;
2.打开函数窗口,引入tMsControls.u32文件中的函数;
3.引入一个显示图标到流程线上,命名为“显示结果”,双击打开该显示图标的展示窗口,导入一幅底图,并用文字输入工具输入以下两段文字:
鼠标位置:{CursorX}、{CursorY}
选择:{Res1}
其中Res1是自定义变量。
然后再按快捷键Ctrl+I打开该显示图标的属性对话框,进行如图15.12所示的设置。
4.拖入一个计算图标到流程线上,命名为“设置右键菜单内容”,双击打开该计算图标的输入窗口,输入以下内容:
--取得窗口句柄
popHandle:=tMsCreatePopupList(WindowHandle)
--设置菜单内容
Res:=tMsAddItem(popHandle, 1,0,"新建")
Res:=tMsAddItem(popHandle, 1,1,"文件夹")
Res:=tMsAddItem(popHandle, 1,2,"文本文件")
Res:=tMsAddItem(popHandle, 2,0,"-")
Res:=tMsAddItem(popHandle, 3,0,"刷新")
Res:=tMsAddItem(popHandle, 4,0,"-")
Res:=tMsAddItem(popHandle, 5,0,"退出")
5.拖入一个交互图标到流程线上,命名为“显示右键菜单”,.再拖入一个计算图标到该交互图标的右边,在弹出的对话框中选择Conditional响应方式,双击打开该响应图标的属性设置对话框,按照图5所示进行设置。
图1响应属性设置对话框
6.双击打开新引入的计算图标,输入如下内容:
--设置菜单显示位置
if CursorX<728 then
Res1:=tMsDisplayControl(popHandle, CursorX, CursorY, 100,100, 1)
else
Res1:=tMsDisplayControl(popHandle, CursorX-70, CursorY, 100,100, 1)
end if
--判断是否选择了“退出”
if (Res1=5) then Quit()
提示:第一个条件语句是用来设置菜单显示位置,通常菜单的大小是随菜单中的文字自动改变的,所以在选择条件时要根据出现的菜单的大小来更改。.
7.完成的程序流程如图2所示,运行程序就可以测试右键菜单的效果了。
图2程序流程图