在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx

上传人:b****2 文档编号:3446908 上传时间:2023-05-01 格式:DOCX 页数:19 大小:1.09MB
下载 相关 举报
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第1页
第1页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第2页
第2页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第3页
第3页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第4页
第4页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第5页
第5页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第6页
第6页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第7页
第7页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第8页
第8页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第9页
第9页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第10页
第10页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第11页
第11页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第12页
第12页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第13页
第13页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第14页
第14页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第15页
第15页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第16页
第16页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第17页
第17页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第18页
第18页 / 共19页
在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx

《在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx》由会员分享,可在线阅读,更多相关《在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx(19页珍藏版)》请在冰点文库上搜索。

在Authorware中自己创建知识对象实现对系统分辨率的自动检测和调整Word文件下载.docx

下面我们分两步介绍其设计过程:

一、自动检测调整分辨率程序的设计

1、我们以调整后的分辨率为800*600像素为例进行介绍,程序设计中,更改分辨率使用的函数为alTools.U32中的alChangeRes()函数,其格式为alChangeRes(Width,Height,bitpp)其中参数Width,Height,bitpp分别为屏幕横纵显示像素及显示色彩,如:

alChangeRes(800,600,32)即将系统显示模式更改为分辨率800*600,色彩为32位真色彩,显示对话框使用的函数是WINAPI.32中的MessageBox()函数。

新建一个文件,保存为“分辨率800,600.a6p”。

程序主流程如图3所示。

2、在“初始化”图标中输入以下内容:

“width:

=ScreenWidthheight:

=ScreenHeightdepth:

=ScreenDepthchange:

=FALSE”,将系统当前的显示模式存储下来,以备恢复显示模式时使用。

3、将第一个条件交互的交互条件设为:

ScreenWidth<

>

800|ScreenHeight<

600,在该交互分支下的计算图标中输入如下内容,“title:

="

调整分辨率"

hint1:

当前系统分辨率为:

"

^ScreenWidth^"

*"

^ScreenHeight^"

^ScreenDepth^"

!

hint2:

\r本程序在

800*600*32的分辩率下才能最优显示,\r按“确定”程序将为你调整到800*600*32后进入主程序,\r按“取消”程序保持原分辩率不变,直接进入主程序,\r请您选择。

result:

=MessageBox(WindowHandle,hint1^hint2,title,81)ifresult=1thenalChangeRes(800,600,32)change:

=TRUEelseendif”。

运行程序后,若分辨率不等于800*600时,进入该条件交互,出现如图2所示的对话框,根据你的选择,决定是否更改分辨率,然后进入主程序。

4、将第二个条件交互的交互条件设为:

ScreenWidth=800|ScreenHeight=600,在该交互分支下的计算图标中输入如下内容,“title:

\r本程序在当前系统分辨率下能最优显示,按“确定”进入主程序。

=MessageBox(WindowHandle,hint1^hint2,title,80)”,运行程序后,若分辨率等于800*600时,进入该条件交互,出现如图1所示的对话框,按下“确定”按钮,进入主程序。

5、“还原退出”按钮交互的属性设置如图4所示,将其范围属性设置“永久”,确保主程序执行过程中“还原退出”按钮始终处于可激活状态,需要退出时,按下该按钮后,将显示模式恢复到原始状态后退出。

在该交互分支下的计算图标中输入如下内容,“ifchange=TRUEthenalChangeRes(width,height,depth)endifQuit()”。

按下“Restart”按钮,运行程序,能实现自动检测调整分辨率的效果,至此自动检测调整分辨率程序的设计过程介绍完毕。

二、自动检测调整分辨率程序知识对象的创建

1、打开文件“分辨率800,600.a6p”

2、选择菜单“Insert/Icon/KnowledgeObjectIcon”在流程线最前面插入一个空“知识对像”图标,将图标命名为“分辨率800,600”如图5所示。

3、同时按下Ctrl和Alt键,然后双击知识对象图标,便可打开知识对象图标,如图6所示。

4、选中Level1中除“知识对像”图标外的所有图标,即未插入“分辨率800,600”知识对象图标时的所有图标,按下“剪切”按钮,在Level2中单击鼠标,按下“CTRL+V”键,将Level1中剪切掉的程序,粘贴到Level2中,如图7所示。

运行程序,可以实现自动检测调整分辨率的效果,该知识对象的功能已经实现。

5、打包为a6r文件:

选择菜单“File/Publish/Package”,出现“打包文件”对话框,如图8所示,选择“WithoutRuntime”和“ResolveBrokenLinksatRuntime”,然后单击“SaveFile(S)&

Package”按钮,打开“PackageFileAs”对话框,如图9所示,在Authorware安装目录下的KnowledgeObjects文件夹中,新建一个“分辨率”文件夹并将打包文件保存在此目录下。

6、回到知识对象文件,打开“知识对象图标”的属性对话框如图10,单击“Wizard”

对话框右边的“浏览”按钮,打开“选择一个向导”对话框,选择刚才保存好的向导程序,按需要设置其它属性,为了安全起见,一般都选择“lockIconWhenSavedinModel”选项,即在保存模型时将文件锁定,不允许修改。

设置好的属性对话框如图11所示。

7、属性设置好后,接下来我们将知识对象保存为模块文件,首先选中知识对象图标。

选择“File/SAVEINMODEL”,打开“SAVEINMODEL”对话框,将文件保存在Authorware安装目录下的KnowledgeObjects文件夹中先前新建的“分辨率”文件夹中。

8、单击知识对象窗口中的“Refresh”按钮,激活分类下拉列表,就会发现多了一个“分

辨率”选项,如图12所示。

选择“分辨率”选项,里面正有我们刚制作的“分辨率800,600”知识对象,如图13所示。

新建一个*.a6p文件,将“分辨率800,600”知识对象拖放到流程线上,运行程序,能够自动检测调整分辨率,至此“检测调整分辨率知识对象”的全部过程就介绍完了。

我们知道,一个完整的知识对象应包含两个文件,一个是知识对象的模块文件,一个是知识对象的向导程序。

上述过程中,我们没有制作知识对象的向导程序,主要因为制作向导程序,是一个非常复杂的过程。

实际工作中,我们可以使用相同的方法,制作“分辨率640,800”、和“分辨率1024,768”的知识对象,同样也能满足需要,在课件主程序制作完成后,将相应的“检测调整分辨率”知识对象,加在课件主程序前面,即可实现系统分辨率的自动检测和调整,在不同的电脑上,浏览用Authorware制作的多媒体课件时,达到最佳显示效果。

参考文献:

[1]李恒、《Authorware6.0多媒体实例大制作》冶金电子工业出版社2002.4

[2]Authorware6.0帮助文件

MessageBox就是消息对话框,我们在运行程序时总不免要同消息对话框打交道,要在“确定”、“取消”等按钮中进行选择。

在Authorware中使用MessageBox对话框,不仅能起到提示、警告、交互的作用,而且使应用程序更符合Windows规范,并简化了编程过程,使用户产生亲切感。

  在Authorware5.0以上版本可以直接使用知识对象“MessageBox”来调用Windows的消息对话框,若在Authorware4.0及以下版本中,则必须调用外部函数winapi.u32,选择载入MessageBox函数,从而调用Windows的消息对话框。

一、Autorware5.0以上中MessageBox函数的使用

  在Authorware5.0以上版本中引入了“知识对象”功能,系统自身提供了许多函数功能,用户只需按知识对象的提示作出相应的选择,就能完成函数的使用,实现了可视化编程。

 Step1:

选择“KnowledgeObjects”中的“MessageBox”知识对象,如图。

并把此知识对象用鼠标拖动到流水线处。

 Step2:

在出现的“Buttons”对话框中选择一种按钮形式,本例选“Yes,No”,如图。

然后点击“Next”按钮。

 Step3:

在“Icon”对话框中选择消息框中的图标,如图。

 Step4:

在“Caption/Message”对话框中选择消息框中的窗口名称和欲输入的消息框文字,如图。

 Step5:

在“ReturnedValue”对话框中选择消息框中的变量返回值,如图表示设置返回的变量为“Value”,其中“ButtonNumber”表示返回按钮的数字,“ButtonName”表示返回按钮的名称,如“Yes”。

 Step6:

这里将出现一个如图所示的要求建立变量的对话框,选择“是(Y)”按钮。

 Step7:

设置完毕后,流水线中MessageBox对象的图标如图。

 Step8:

运行程序,出现如图所所示的消息对话框。

怎么样?

简单吧!

那你也试试。

二、Autorware5.0以下中MessageBox函数的使用

1winapi.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(HWNDhWnd,LPCSTRlpText,LPCSTRlpCaption,UINTuType)。

各量的含义分别为:

HWNDhWnd:

程序主窗口的窗口句柄,在Authoraware中为系统变量WindowHandle;

LPCSTRlpText:

输入消息对话框正文;

LPCSTRlpCaption:

输入消息对话框标题;

UINTuType:

是一个字符串常量,该字符串的值决定消息对话框中按钮、图标等标志情况。

如为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”的作用是换行,UINTuType=48是显示

和“确定”按钮。

挖掘MessageBox函数的潜力

利用MessageBox函数不但能显示标准的Window消息框,而且可利用函数运行后的返回值对用户的选择进行相应的响应,实现与用户的交互作用。

我们在编制多媒体程序时,在用户退出程序前一般需要选择“确定”或“取消”,此时我们就可利用MessageBox函数实现这种功能。

先在流水线上建立按钮交互,在“response”中设置成“Perpetual”、“Branch”中选中“Return”,这样以便让用户随时可以退出。

在交互后的群组图标的流程图如图,

  在图标messagebox中输入:

“mess:

=MessageBox(WindowHandle,"

按<

确定>

退出程序,确定退出吗?

\r\r程序设计:

汪纪苗 

\r\rHttp:

//\r\rEmail:

nbwjm@"

退出..."

1)”。

  交互图标选择“Conditional”,如图3建立“mess=1”和“mess=2”的二个分支,其中在计算图标“mess=1”中输入“Quit(0)”,群组图标“mess=2”为空。

最后,运行后得到如图4的消息对话框,选择“确定”后退出,选择“取消”仍返回原程序运行处。

 

         图 3                   图 4

  运用上述方法还可制作程序的帮助系统等。

Authorware作为优秀的多媒体制作软件,运用它所包含的系统函数、外部函数,能轻松、快捷地实现相应的功能,其中MessageBox函数就是一种常见而实用的函数,为我们制作的多媒体程序增色不少。

4.1.8 

用WINAPI.U32屏蔽功能键和

隐藏任务栏

1)新建一个文件,文件名为sample.a7p。

2)放置一计算图标于流程线上。

3)按【Ctrl+Shift+F】快捷键,打开“函数”窗口。

4)选择sample.a7p,单击【加载】钮,打开Winapi.us2文件,并引入其中的SystemParametersInfo()、FindWindow()和SetWindowpos()三个函数。

5)双击计算图标,在里面输入如下程序语句:

SystemParametersInfo(97,1,1,1)——屏蔽键盘所有功能键。

wnd:

=findwindow(″shell_traywnd″,″″)——捕捉任务栏窗口。

SetWindowpos(wnd,0,0,0,0,0,128)——隐藏任务栏窗口。

6)在程序的退出处放置一计算图标,双击计算图标,在里面写上:

SystemParametersInfo(97,0,1,1)——恢复键盘所有功能键。

wnd:

=FindWindow(″shell_traywnd″,″″)——捕捉任务栏窗口。

SetWindowpos(wnd,0,0,0,0,0,64)——显示任务栏窗口。

我们还可以在运行程序前,通过Windows 

API函数捕捉所有的窗口,获得窗口的句柄,然后再向它们依次发送MW_QUIT消息,这样就可以在运行程序之前,关闭所有正在运行的程序,从而释放出更多的资源给你的多媒体作品。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2