您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 网站教程 > 网页设计 >
    MSAgent 详细解说
    时间:2016-07-10 10:03 来源: 作者: 浏览:收藏 挑错 推荐 打印
    四、改头换面
    MSAgent = Merlin ? 错!MSAgent 是指一系列动画人物的总称,最常见的 office 中的那些活宝,各位应该都熟悉吧?先来看看下面的这个例子:

    <object style="visibility:hidden" id="MSAgent" classid="CLSID:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F"></object>
    <script language="JavaScript">
    //Coded by Windy_sk <> 20040214

    var Agent = null;
    var AgentID, AgentACS;
    var AgentLoad = false;

    function LoadAgent(NewAgent) {
    if(AgentLoad) {
    MSAgent.Characters.Unload(AgentID);
    MSAgent.Connected = false;
    Agent = null;
    }
    AgentID = NewAgent;
    AgentACS = "" NewAgent "/" NewAgent ".acf";
    MSAgent.Connected = true;
    MSAgent.Characters.Load(AgentID, AgentACS);
    AgentLoad = true;
    Agent = MSAgent.Characters.Character(AgentID);
    Agent.get("state", "Showing, Hiding");
    Agent.MoveTo(400, 300);
    Agent.Show();
    return;
    }

    LoadAgent("Merlin");
    </script>

    MSAgent Select :
    <SELECT name="Agent_select" onchange="LoadAgent(this[this.selectedIndex].text)">
    <OPTION>Merlin</OPTION>
    <OPTION>Peedy</OPTION>
    <OPTION>Genie</OPTION>
    <OPTION>Robby</OPTION>
    </SELECT>

      看到没有? 原来 MSAgent 还有这么多可爱的造型呢!上面的例程中,我定义了一个读取角色的函数 LoadAgent ,通过这个函数更换角色,其中的大部分的功能在前面的章节中已经介绍了,这里仅仅说明一下,新的方法:

    MSAgent.Characters.Unload() 卸载角色,其中 AgentID ,必须是 MSAgent.Characters.Load() 中声明过的

    Agent.MoveTo() 这个方法上一节中介绍过,但是假如把它放在 Agent.Show() ,则相当于定义角色的出现位置

    其实,MSAgent 绝对不仅仅是那么多,但是 MicroSoft 的官方网站上只提供了那么多……怎么办?可以从他的网站上连接角色,当然可可以从你的网站上呀!你可以在这里 下载官方角色以及语音引擎(可惜没有中文);当然,假如你有爱好的话也可以开发一个属于自己的 Agent ,相关开发工具 ,网上也有很多高手做好的动画人物,推荐一个网站 你也可以自己搜索一下。

    安装后角色文件存放在 %WINDOWS%\msagent\chars 目录下的 *.acs 文件,上传到服务器上,直接引用到那个路径就可以了!(你也可以在你的硬盘里搜索一下 *.acs 会有不小的收获呦)这里要说明一下,请自行更改程序中标明网络路径的相关语句,且注重扩展名是 .acs !

    假如要让本机支持相应的 MSAgent ,也就是说不用网络调用,只要把 *.acs 文件 copy 到 %WINDOWS%\msagent\chars 目录就可以了,但假如是 *.exe 的安装文件,则会自动把角色文件放置到相应的路径下。

    (责任编辑:12图资源库)