分享
 
 
 

Authorware实战开发专题之制作Windows标准菜单方法

王朝system·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

我们知道,Authorware提供了Pull-Down Menu下拉式菜单制作的功能,可是如果我们要实现下拉式菜单下的分级菜单,下拉列表菜单和鼠标右键弹出式菜单等三种Windows常见的标准菜单,如何在Authorware中实现呢?继续看下去吧!

5.1 利用tMsControls.u32制作Windows标准菜单

这里我们要借助Authorware的外部扩展函数:tMsControls.u32来制作Windows常见的标准菜单选项,它是Mediashoppe提供的一个免费U32(UserCode),可以在Authorware的安装目录里找到,功能强大。看看它的部分函数功能吧:

tMsCreateDropList(windowHandle) -----创建弹出式菜单的句柄

tMsCreatePopupList(windowHandle) -----创建下拉列表式菜单的句柄

tMsAddItem(ControlHandle, menuItemNo, submenuItemNo, menuText) -----创建菜单项

tMsGetItem(ControlHandle, menuItemNo, submenuItemNo) -----获取用户选择菜单

tMsDisplayControl(ControlHandle, X, Y, Width, Height, Return) -----显示菜单函数

有了上面这些扩展函数就可以很轻松的搞定下拉列表菜单和鼠标右键弹出式菜单,而Pull-Down Menu下拉式菜单在Authorware系统就提供了。

1、执行界面预览,如图5.1和图5.2所示

图5.1下拉列表菜单执行效果

图5.2 右键弹出式菜单执行效果

2、程序的流程图如图5.3所示

图5.3 范例程序流程图

3、操作步骤:

1) 新建一个文件,并调入外部函数tMsControls.u32的相关扩展函数:

tMsCreateDropList(windowHandle)

tMsCreatePopupList(windowHandle)

tMsAddItem(ControlHandle,menuItemNo,submenuItemNo,menuText) tMsGetItem(ControlHandle, menuItemNo, submenuItemNo)

tMsDisplayControl(ControlHandle, X, Y, Width, Height, Return)

2)设置屏幕大小和背景

3)创建中文下拉式菜单,程序流程如图5.4

图5.4创建中文下拉式菜单程序流程

我们知道,如果我们把文件File的属性Properties的“menu bar”Options选上,如图5.5所示,则程序的运行窗口将出现一个“File”的下拉菜单,如果我们要制作全中文的菜单,当然要想办法把它“擦除”掉,而“File”下拉菜单是系统默认的,因此我们也建立一个和它同名的“File”下拉菜单,这样系统就认为这个“File”下拉菜单是用户所创建,理所当然我们可以用擦除图标把它擦除掉拉。其它的步骤请看图5.4。

图5.5 File文件的属性Properties范例设置

4)创建下拉列表菜单和鼠标右键响应菜单。

(1)在计算图标“creatmenu”里写入如下程序代码:

---- 下列代码创建弹出式菜单的句柄:

popupHandle:=tMsCreatePopupList(WindowHandle)

---- 下列代码创建弹出式菜单的菜单选项列表:

tMsAddItem(popupHandle, 1, 0, "作者介绍")

tMsAddItem(popupHandle, 2, 0, "联系作者")

tMsAddItem(popupHandle, 3, 0, "-") ---- 在选项 2和选项 3 之间创建一条分隔线

tMsAddItem(popupHandle, 4, 0, "软件说明")

tMsAddItem(popupHandle, 5, 0, "软件教程")

tMsAddItem(popupHandle, 6, 0, "-") ---- 在选项 5和选项 7 之间创建一条分隔线

tMsAddItem(popupHandle, 7, 0, "退出系统")

---- 下列代码为"软件教程"菜单项创建两个分隔开的子菜单选项,如不需要子菜单,可---- 以省略

tMsAddItem(popupHandle, 5, 1, "Authorware")

tMsAddItem(popupHandle, 5, 2, "-")----在子菜单Authorware和子菜单Director之间创建----一条分隔线

tMsAddItem(popupHandle, 5, 3, "Director")

---- 下列代码创建下拉列表式菜单的句柄:

droplisthandle:=tMsCreateDropList(WindowHandle)

---- 下列代码创建下拉列表式菜单的菜单选项列表:

tMsAddItem(droplisthandle, 1, 0, "请选择访问以下网站")

tMsAddItem(droplisthandle, 2, 0, "---------------------------")

tMsAddItem(droplisthandle, 3, 0, "郁 金 香 B B S ")

tMsAddItem(droplisthandle, 4, 0, "清 音 飞 扬")

tMsAddItem(droplisthandle, 5, 0, "魔 岩 工 作 室")

---- 下列代码是显示下拉列表式菜单

tMsDisplayControl(droplisthandle,17,80,50,50,0)

(2)加鼠标右键响应弹出菜单的永久条件交互和下拉列表菜单选择菜单的按钮响应。设置条件“RightMouseDown=TRUE”,其中“RightMouseDown”为系统变量,返回类型为“Continue”,并设置为永久交互,如图5.6所示。这样当用户进行鼠标右浆操作时,条件为真,执行计算图标里的代码后并弹出菜单,由用户选择:

---- 下列代码在鼠标右键点击处,弹出一个前边设定好的弹出式菜单,

---- 并将用户反馈(即用户所选择的菜单项)返回给变量popresult:

popresult:=tMsDisplayControl(popupHandle, CursorX, CursorY, 100, 120, 1)

---- 下面是当用户选择弹出式菜单执行的相关操作的代码:

if popresult="退出系统" then Quit() -----这里只是“退出系统”操作代码的样式范本

图5.6 右键响应弹出菜单的永久条件交互

而另一个“Continue”交互“GO”就是下拉列表菜单的相关操作,计算图标的代码如下:

----将用户反馈(即用户所选择的菜单项)返回给变量DropReturnVar:

DropReturnVar:=tMsGetItem(droplisthandle, 0, 0)

---- 下面是当用户选择菜单后执行相关操作的代码,只是简单显示一个交互消息框而已。

if DropReturnVar=3 then MessageBox(WindowHandle,"URL: http://bbs.stu.edu.cn ","郁金香BBS",64)

if DropReturnVar=4 then MessageBox(WindowHandle,"URL: http://www.music.stu.edu.cn ","清音飞扬",64)

if DropReturnVar=5 then MessageBox(WindowHandle,"URL: http://202.192.154.5/myhome/rock ","魔岩工作室",64)

5)存盘完成。

执行一下,看看效果吧。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有