用Authorware制作右键二重菜单
Authorware本身没有直接为我们提供制作弹出式二重菜单的功能,但是Authorware 5 Attain附带的用户自定义函数tMsControls.U32(立即下载)可制作弹出式二重菜单。本文就为各位介绍其详细的制作方法。
实现效果
当用户在演示窗口单击鼠标右键时出现一个菜单(类似于在Windows桌面上单击鼠标右键出现的菜单)。菜单中的第一重是《中国电脑教育报》的几个一级栏目,如:硬件世界、软件天地、网络时代和电脑教育(注:目前软件天地与网络时代已合为软件.net,电脑教育应为教育信息化);第二重菜单是软件天地的一些二级栏目,如:业界视窗、新手上路和编程乐园等。当用户选择某个菜单时,将跳转到相应的内容。
准备工作
启动Authorware 5.0,新建一个名为“右键二重菜单”的文件。由于函数tMsControls.U32是外部函数,所以需要进行加载。按Ctrl+Shift+F打开Functions函数库,选择Category下的“右键二重菜单.a5p”,然后单击Load…出现对话框,选择tMsControls.U32后单击打开,出现一个对话框。按住Ctrl键可以连续选中所需要的三个函数:tMsAddItem、tMsCreatePopupList、tMsDisplayControl,最后单击Load即可完成对函数的加载。
右键响应的制作
在流程线上放置一个【交互图标】,取名为“右键响应”;在【交互图标】旁边放置一个【群组图标】,其Type(响应类型)为:Conditional;双击【群组图标】上面的“=”,出现对话框,在Condition中输入RightMouseDown=TRUE,Response下Scope设置为Perpetual,Erase设置为After Next Entry,Branch设置为Return,Status设置为Not Judged,最后单击OK完成右键的制作。
制作二重菜单
双击打开【群组图标】,在流程线上放置一个【计算图标】,取名为制作菜单。双击打开并在其中输入以下内容:
创建弹出式菜单的句柄:
popupHandle:=tMsCreatePopupList(WindowHandle)
1、设置第一重菜单中的内容,其中"-"为分隔线,为了使菜单名称居中,可以在名称前加空格。
tMsAddItem(popupHandle, 1, 0, "中国电脑教育报")
tMsAddItem(popupHandle, 2, 0, "-")
tMsAddItem(popupHandle, 3, 0, " 硬件世界")
tMsAddItem(popupHandle, 4, 0, " 软件天地")
tMsAddItem(popupHandle, 5, 0, " 网络时代")
tMsAddItem(popupHandle, 6, 0, " 电脑教育")
tMsAddItem(popupHandle, 7, 0,"-")
tMsAddItem(popupHandle, 8, 0," 退出")
2、设置硬件世界和电脑教育的子菜单,即第二重菜单:
tMsAddItem(popupHandle, 4, 1, "业界视窗")
tMsAddItem(popupHandle, 4, 2, "新手上路")
tMsAddItem(popupHandle, 4, 3, "软件速递")
tMsAddItem(popupHandle, 4, 4, "编程乐园")
tMsAddItem(popupHandle, 4, 5, "经验技巧")
tMsAddItem(popupHandle, 6, 1, "教育前沿")
tMsAddItem(popupHandle, 6, 2, "校园实践")
当单击右键将弹出一个前边设定好的弹出式菜单,并将用户反馈(即用户所选择的菜单项)返回给变量result:
result := tMsDisplayControl(popupHandle,CursorX,CursorY,150, 100, 6)
图1
此时,按Ctrl+R运行程序会发现在演示窗口单击鼠标右键时会出现一个如图1所示的二重菜单。
二重菜单的交互响应
在流程线上再放置一个【计算图标】和【决策图标】;【决策图标】旁放置一些【显示图标】(如图2),根据名称在【显示图标】输入所需内容,双击【显示图标】上面的小矩形出现对话框,将Erase Contents设置为Don't Erase;在计算图标中输入以下内容:
图2
if result=1 then GoTo(IconID@"中国电脑教育报")
if result=3 then GoTo(IconID@"硬件世界")
if result="4:1" then GoTo(IconID@"业界视窗")
if result="4:2" then GoTo(IconID@"新手上路")
if result="4:3" then GoTo(IconID@"软件速递")
if result="4:4" then GoTo(IconID@"编程乐园")
if result="4:5" then GoTo(IconID@"经验技巧")
if result="5" then GoTo(IconID@"网络时代")
if result="6:1" then GoTo(IconID@"教育前沿")
if result="6:2" then GoTo(IconID@"校园实践")
if result=8 then Quit(0)
最后按运行程序,当在演示窗口单击鼠标右键时出现二重菜单,
相关新闻>>
- 发表评论
-
- 最新评论 更多>>