在authorware5.0以上版本可以直接使用知识对象“message box”来调用windows的消息对话框,若在authorware4.0及以下版本中,则必须调用外部函数winapi.u32,选择载入messagebox函数,从而调用windows的消息对话框。
一、 autorware5.0以上中message box函数的使用
在authorware5.0以上版本中引入了“知识对象”功能,系统自身提供了许多函数功能,用户只需按知识对象的提示作出相应的选择,就能完成函数的使用,实现了可视化编程。
step1:选择“knowledge objects”中的“message box”知识对象,如图。并把此知识对象用鼠标拖动到流水线处。
step2:在出现的“buttons”对话框中选择一种按钮形式,本例选“yes, no”,如图。然后点击“next”按钮。
step3:在“icon”对话框中选择消息框中的图标,如图。然后点击“next”按钮。
step4:在“caption/message”对话框中选择消息框中的窗口名称和欲输入的消息框文字,如图。然后点击“next”按钮。
step5:在“returned value”对话框中选择消息框中的变量返回值,如图表示设置返回的变量为“value”,其中“button number”表示返回按钮的数字,“button name”表示返回按钮的名称,如“yes”。然后点击“next”按钮。
step6:这里将出现一个如图所示的要求建立变量的对话框,选择“是(y)”按钮。
step7:设置完毕后,流水线中message box对象的图标如图。
step8:运行程序,出现如图所所示的消息对话框。怎么样?简单吧!那你也试试。
二、autorware5.0以下中message box函数的使用
1 winapi.u32中messagebox函数的调用
先把winapi.u32复制到源程序所在的相同目录中,然后选择“window→functions”或按快捷键ctrl+shift+f,出现如图1的界面,在“category”选择相应authorware程序名,未命名时就为[untitled]。
图 1
再点击按钮“load…”,在对话框中选择源程序目录下的winapi.u32,再在图2所示中的函数库中选择“messagebox”函数,单击“load”,此时函数已被载入,可用于计算图标中。
图2
2 messagebox函数的基本格式
messagebox函数的使用基本格式为:int:= messagebox( hwnd hwnd , lpcstr lptext, lpcstr lpcaption, uint utype)。各量的含义分别为:hwnd hwnd:程序主窗口的窗口句柄,在authoraware中为系统变量windowhandle;lpcstr lptext:输入消息对话框正文; lpcstr lpcaption:输入消息对话框标题;uint utype:是一个字符串常量,该字符串的值决定消息对话框中按钮、图标等标志情况。如为0显示“确定”按钮;为1显示 “确定”、“取消”按钮;为4显示“是”、“否”按钮。;int: 一个变量名,用于记录messagebox函数的返回值。当用户选择了“确定”、“取消”、“终止”、“重试”、“忽略”、“是”、“否”按钮其返回值分别为1,2,3,4,5,6,7。
如在计算图标中输入“messagebox( windowhandle ,"确定退出吗?","测试程序",1)”,运行后显示为:
输入“messagebox( windowhandle , "/r 版权所有,不得用于商业用途!! /r/r 程序设计: 汪纪苗 /r/r浙江省鄞县中学 浅浅工作室 ","《布朗运动模拟程序》1.1版 ",48)”显示为
其中“/r”的作用是换行,uint utype=48是显示 和“确定”按钮。
3 挖掘messagebox函数的潜力
利用messagebox函数不但能显示标准的window消息框,而且可利用函数运行后的返回值对用户的选择进行相应的响应,实现与用户的交互作用。
我们在编制多媒体程序时,在用户退出程序前一般需要选择“确定”或“取消”,此时我们就可利用messagebox函数实现这种功能。先在流水线上建立按钮交互,在“response”中设置成“perpetual”、“branch”中选中“return”,这样以便让用户随时可以退出。在交互后的群组图标的流程图如图,
在图标messagebox中输入:“mess:=messagebox( windowhandle , "按<确定>退出程序,确定退出吗? /r/r程序设计:汪纪苗 /r/rhttp://nbwjm.go.163.com /r/remail:nbwjm@sohu.com "," 退出...",1)”。
交互图标选择“conditional”,如图3建立“mess=1”和“mess=2”的二个分支,其中在计算图标“mess=1”中输入“quit(0)”,群组图标“mess=2”为空。最后,运行后得到如图4的消息对话框,选择“确定”后退出,选择“取消”仍返回原程序运行处。
图 3 图 4
运用上述方法还可制作程序的帮助系统等。authorware作为优秀的多媒体制作软件,运用它所包含的系统函数、外部函数,能轻松、快捷地实现相应的功能,其中messagebox函数就是一种常见而实用的函数,为我们制作的多媒体程序增色不少。
新闻热点
疑难解答