收藏本站
 
设为主页
     您的位置:首页资源库课件制作Authorware
== 资 源 搜 索 ==
 
高级搜索
== 学 习 资 源 ==
操 作 系 统
Windows DOS
Linux Unix
Novell OS/2
办 公 软 件
Word Excel
Access Powerpoint
Outlook Wps
媒 体 处 理
网页制作 动画制作
图片处理 视频处理
媒体播放 音频处理
课件制作 其它……
网 络 工 具
网页浏览 下载工具
FTP 工具 邮件工具
网络安全 服 务 器
联络聊天 其它……
工 具 软 件
压缩工具 系统工具
文件工具 磁盘工具
病毒防治 阅读工具
测试工具 程序设计
== 素 材 资 源 ==
GIF动画 Flash动画
按钮图库 图标图库
线条图库 背景图库
创意图库 音频素材
== 教 程 下 载 ==
 
Authorware6.0 技巧与实例(11)

作者:sintian/新天创作室

 

    第十一节 检测和调整显示器分辨率

  用Authorware制作课件,在制作之前就要确定好作品的分辨率,现在常用的分辨率为800×600。可是这并不能保证设计的效果能够在用户的计算机上完美重现。如果用户的显示器分辨率为640×480,那么作品将有一部分在屏幕外,根本显示不出来;如果用户显示器的分辨率为1024×768,那么作品仅能占据屏幕的一部分,也不能让用户看到最佳效果。所以最好的方法是,在程序运行时,检测用户的显示器分辨率,如果和你设计的不一致,那么提示用户改变它。

  本节要点:外部扩展函数(UCD) 变量(Variables)和函数(Functions)的使用知识对象(Knowledge Object)

  本例简介:本例流程如下:首先检测用户的显示器分辨率,并保存在变量中。然后判断用户的显示器分辨率和所要求的分辨率是否相同。如果相同,不作改变,直接运行程序;如果不同,提示用户改为要求的分辩率,用户确定后,对显示器分辨率进行调整。如果在运行程序时,用户的显示器分辨率被更改过,退出程序前,将用户显示器的分辨率恢复到原先的值。

  本例通过Authorware的一个外部扩展函数alTools.u32来实现,这个扩展函数可以从作者的主页 http://home3.pacific.net.sg/~apudeepa 上得到最新版本。本例带有源程序中也有这个扩展函数的最新版本。

  本例的结构设计可以很方便地添入其它内容,可以做为模板供以后使用。

  完成后流程图

  

  制作步骤:

1、新建一个程序,命名为“aw6_11”,你也可以在程序完成后保存时命名。

2、装载外部扩展函数alTool.u32。如果Functions窗口没有显示出来,选择“Window”>>“Functions”命令,使它显示。在“Category”下拉菜单中选择“test.a5p”,如果你的程序还没有命名保存,那么这时应该选择“[Untitled]”。

3、单击“Load...”按钮,出现“Load function”对话框,选择“alTools.u32”后,单击“打开”按钮确定。

  

  此时出现alTools.u32中所有的函数列表,本例只需选择“alChangeRes”,然后点按“Load”按钮确定。

  

  这时就可以在该程序中使用“alChangeRes”函数了,这个函数的作用就是改变屏幕的分辨率。用法为: alChangeRes(Width,Height,bitpp),如alChangeRes(800,600,16) 就是将显示器设为800×600像素,16位真彩色,这也是现在最流行的设置。

4、向流程线上由上到下,依次拖一个计算图标、一个框架图标和一个计算图标。分别命名为“test Screen”、“frame”和“end”。打开“frame”框架图标,将其中所有内容删除,因为本例中不需要其中的导航按钮。

5、向“frame”框架图标右侧拖入两个群组图标,分别命名为“next”和“notice”。

6、“test Screen”计算图标中代码如下:

--这里是本程序运行所需的屏幕分辨率

--本例设为800×600,16位真彩色,你可以改为你想要的值

N_width:=800

N_height:=600

N_depth:=16

--先检测当前屏幕分辨率,并保存起来,以便程序退出时恢复

width:=ScreenWidth

height:=ScreenHeight

depth:=ScreenDepth

--如果当前屏幕设置和本程序要求不同,

if ((ScreenDepth > 800)) then

GoTo(IconID@"notice")

else

GoTo(IconID@"next")

end if

7、群组(Group)图标“next”中为主程序内容,你可以将你的程序放在这个图标内。计算(Caculation)图标“QUIT”是一个按钮,其中代码为 “GoTo(IconID@"end")”,意思就是在点按此按钮后,程序转到“end”图标执行。

  

8、群组(Group)图标“notice”中内容为调整显示器的分辨率。知识对象(Knowledge Object)“pop-up alert”中的内容是在显示器分辨率不符合要求时,弹出一个窗口,提示用户将进行修改,用户可以确定修改,也可以不确定。计算(Caculation)图标“change screen”中内容是对显示器的分辨率进行调整,其中代码如下:

--将屏幕分辨率调为所要求的值

if wzMBReturnedValue=6 then

alChangeRes(N_width,N_height,N_depth)

changed:=1 --标记屏幕分辨率已被更改

else

GoTo(IconID@"next")

end if

GoTo(IconID@"next") --跳到主程序

  

9、群组(Group)图标“notice”中“pop-up alert”是Message Box知识对象(Knowledge Object),你可以按照提示进行各项设置。其中“Caption/Message”为设置弹出窗口的标题和消息内容,本例设置如下。

  

10、计算(Caculation)图标“end”是在程序退出前,判断用户的显示器分辨率在程序运行时,是否被修改过,如果被修改过,那么恢复原来的分辨率设置;反之直接退出。其中代码如下:

--如果屏幕分辨率被更改,程序退出时,恢复原设置

if changed=1 then alChangeRes(width,height,depth)

Quit() --退出

  这样你的程序在运行时,如果需要的话,就可以将用户显示器分辨率设置为合适值,也就能够使你的作品在所有用户的机器上完美重现了!

  技巧提示:当程序中有大量的函数和变量时,关于变量的说明和程序中的注释语句是必要的,因为这样能使别人可以很容易读取自己的程序,在很长时间后也能根据注释迅速回忆起原来的内容。

  源文件:本例使用了大量的变量和函数,请大家下载源程序,仔细琢磨。本源文件中包含和alTools.u32的最新版本。

  点击这里下载

 

Copyright © 2001-2002 东莞中学信息技术科 All Rights Reserved
IE4.0 or later / 800*600  For The Best View