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

来源:不详 责任编辑:栏目编辑 发表时间:2013-07-01 14:37 点击:

    用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 <N_depth)|(ScreenWidth<>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”中内容是对显示器的分辨率进行调整

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    媒体动画导航

    Authorware
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1