AUTHORWARE的扩展与开发----之调用VB屏幕保护

  • 来源: 互联网 作者: 若水   2008-03-21/16:30
  • [前言]  AUTHORWARE是专业的多媒体制作利器,但是,它也有许多先天的不足,其中之一就是原创性太少,大多数的素材需要借助其它软件的前期处理。有点厌倦了频繁地调用,就想折腾点名堂出来。想到它山之石可以攻玉的古训,所以,参考其它编程语言,开始了一系列移花接木(包括屏保、进度条、鼠标跟随等)。

     

    [思路来源]  VB中有许多梦幻色彩的屏幕保护程序,如雨、雪、星空、变幻线等。他们个头不大,载入时间很短,完全可以由AUTHORWARE直接调用。如果谁想在AUTHORWARE中开发这样的屏幕保护,那就先做好熬三天三夜的思想准备吧!

     

    [实现步骤]

        包括三个部分:1、在AUTHORWARE中制作屏幕保护程序框架;2、在VB中制作屏幕保护内容;3、整合。

    <一>  AUTHORWARE中的屏幕保护框架

          可以参考AUTHORWARE自带的show me程序----ssaver.a6p

          说明一下屏保变量和函数:TimeOutLimit、TimeOutGoTo()。前者设置屏保等待时间,后者实时记录流逝时间,时间一到就进入屏保模块。两者必须配合使用,缺一不可!

      1、 加入计算图标3--限时,程序如下:

    --------本程序设置等待时间,可以通过改动该计算图标名称前的数字改动等待时间

    --------并记录流逝时间

    TimeOut:=GetNumber(1,IconTitle)

    #p#分页标题#e#TimeOutLimit:=TimeOut

    TimeOutGoTo(IconID@"屏保")

      2、 加入交互图标控制.下挂一个计算图标屏保,设为热区交互,大小位置均设置为0(无需真正的热区交互,只是提供了一个入口)。

        (1)  计算图标屏保内的程序如下:

    --------跳转调用外部VB屏保程序

    JumpOutReturn("SCRSAVER.EXE")

     

    --------1 在SSAVER.A6P中,屏保模块出口还有一个RESET计算图标,

    --------  它使程序从屏保中退出后,重新调用:

    --------          TimeOutLimit:=TimeOut

    --------          TimeOutGoTo(IconID@"屏保")

    --------  从而再次激活屏保,程序在静静地等待下一次的被唤醒。

    --------2 这在该演示程序中是合理的(内部跳转)。但是对于本程序却不仅不适用,反而是致命的:

    --------#p#分页标题#e#  因为调用外部程序后,尽管主程序在后台,却并没有停止过运行。那么,频繁调用上述程序

    --------  的直接结果就是外部屏保程序的不断运行,可想而知,系统终将不堪承受而崩溃!!!

     

    --------3 所以,针对本程序,不能在进入屏保后还执行那两个难兄难弟 变量和函数。

    --------4 另外,重新回到主程序后,应当再次激活屏保。可能大家立刻就会想到用API函数来获取

    --------  当前窗口句柄。我当时也这样费了好大一番周折。可是,最后程序中,只要你CLICK

    --------  一下主程序屏幕,一切就OK了,怎么样,够简单吧!

    --------  要知秘诀,请继续向下看。

        (2)  加入一个计算图标在计算图标屏保右侧,永久条件交互:MOUSEDOWN。

               程序如下:

    TimeOutLimit:=TimeOut

    TimeOutGoTo(IconID@"屏保")

    --------这下明白了吧,点击屏幕后,再次执行那两个难兄难弟 变量和函数,#p#分页标题#e#

    --------从而激活了屏保,静静地等待下一次的被唤醒。

     

    3、 加入一个框架结构,作为主程序。作为演示,笔者在入口设置了一个退出按钮和三个导航按钮,导航方向为框架结构下的三个组图标。实际应用中,可以在这些组图标中添加主程序。第一个空组图标只是为了防止程序立刻进入第一个分支,这种办法经常用到。

     

    4、 其它细节请参考源程序(下载)

     

    <二>  VB中的屏幕保护程序

        引用自网络,作者佚名,笔者二次加工。

        程序包含一个form、一个picturebox、一个label、两个timer。

        程序效果是满天彩球拖着尾巴向下坠落,左上角是本工作室的信息在移动。

        1、 程序略(感兴趣的朋友可以与我联系);

        2、编译成exe文件scrsaver.exe

     

    <三>  整合

        scrsaver.exe放置在AUTHORWARE的屏保程序的同级目录下。

     

     

    [执行效果]

    #p#分页标题#e#    在AUTHORWARE中执行程序后,.等待3秒钟,进入屏保,为满天彩球拖着尾巴向下坠落,左上角是本工作室的信息在移动。

        移动或点击鼠标可退出屏保并返回AUTHORWARE程序,点击屏幕可以再次激活屏幕保护。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多