隨筆 - 154  文章 - 60  trackbacks - 0
          <2008年3月>
          2425262728291
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          聲明:

          該blog是為了收集資料,認識朋友,學習、提高技術,所以本blog的內容除非聲明,否則一律為轉載!!

          感謝那些公開自己技術成果的高人們!!!

          支持開源,尊重他人的勞動!!

          常用鏈接

          留言簿(3)

          隨筆分類(148)

          隨筆檔案(143)

          收藏夾(2)

          其他

          學習(技術)

          觀察思考(非技術)

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          作了少許調整!

          <!--
          讓你的網頁更精彩--Microsoft Agent在網頁上的簡單應用
          (本文假設您使用WindowsXP或Windows2000操作系統) 
          不知在你漫游互聯網時可曾在他開
          某個網頁時看到一個小巫師,藍色的袍子上滿是金黃的星星和月亮十分可愛。他會向你問好,給
          你介紹這個網站。你一定奇怪,那個巫師是怎么做出來的。其實他并不
          是網頁實現的而是微軟的一個ActiveXObject 叫Microsoft Agent。今天,
          我們來討論如何在你的網頁中加入這個可愛的Agent(他叫Merlin)。
          Microsoft Agent 的官方角色除了WindowsXP和2000自帶的巫師Merlin,
          還有需要從http://www.microsoft.com/msagent/downloads/user.asp#character 下載的附加界色。他們
          是瓶中妖怪Genie(還記得那首歌嗎),鸚鵡Peedy和機器人Robby。下載后的文件是exe文件,
          直接運行就可以完成安裝了。
          在我們的網頁里可以通過Javascript調用Agent.Control.2來裝載我們的Agent。具體方法如下:
          var chName; 
          var agent;
          var ch;
          chName = "Merlin";
          agent = new ActiveXObject("Agent.Control.2"); 
          agent.Connected= true; 
          agent.Characters.Load(chName,chName+".acs");
          ch = agent.Characters(chName);
          代碼解釋:
          · chName 是我們要用的角色的名字,因為多出要使用它,所以把它保存成字符型變量了,這里我們把它定義成了"Merlin"。
          · agent 為Agent.Control.2指定一個對象變量
          · agent.Connected = true 用來啟動于Microsoft Agent的連接
          · agent.Characters.Load() 讀入要使用的角色,他有兩個參數,第一個是角色的姓名,第二個是角色存儲的文件。
          o 這里順便說一下,Microsoft Agent角色都保存在Windows目錄下的MSAgent
          PDF 文件使用 "pdfFactory Pro" 試用版本創建 ?www.fineprint.com.cn
          文件夾中的chars文件夾內。一般情況下其文件名與角色名是相同的角色文件的
          擴展名是.acs。

          · ch = agent.Characters() 讓ch成為角色的操縱變量,以后我們只要操縱ch 就可以讓我們的角色作出各種動作了。比如我們要使用Speak行為就輸入ch.Speak("Hello");
          · 這部分代碼基本上就是個模板,應用時Copy&Paste就Ok了.好了,現在我們角色已經讀入了內存。
          接下來我們來討論一些常用基本角色行為。
          基本角色行為(以merlin為例)
          show() 使角色顯示在屏幕上。剛剛創建的角色是不能自己現實出來的必須調用show()函數。
          hide() 相對于show()的函數,用來讓角色從屏幕上隱藏起來(并不從內存中刪除)
          speak(words) 讓我們的角色"說話",words的內容會顯示在一個語言氣球內,words為字符串
          think(words) words的內容會顯示在一個思考氣球內,words為字符串
          moveto(x,y) 移動到屏幕的(x,y)位置
          play(ani) 使用角色動畫ani 為字符串。其值可以為:
          Announce 
          Explain
          Congratulate
          DontRecongnize
          Gesturedown
          Gestureleft
          Gestureright
          Gestureup
          Greet
          Pleased
          Read
          Surprised
          Idel1_1到Ideal1_4
          Idel2_1和Idel2_2

          這里僅僅給出關于Merlin 的一部分,具體動畫指令可參看MSDN的Microsoft Agent Animations
          for .里的內容,沒有MSDN的朋友也可以到Microsoft 的網站去下載agent的幫助文件。
          好了,介紹到這里Microsoft agent 最簡單的應用就已經講完了,下面來看一個例子吧。
           
          程序事例:
          -->
          <html>
          <body>
          <script>
          var chName;
          var agent;
          var Merlin;
          chName 
          ="Merlin";
          agent 
          = new ActiveXObject("Agent.Control.2");
          agent.Connected 
          = true;
          agent.Characters.Load(chName,chName
          +".acs");
          Merlin 
          =agent.Characters(chName);
          Merlin.MoveTo(
          200,200);
          Merlin.Show();
          Merlin.Play(
          "Announce");
          Merlin.Speak(
          "歡迎來到 的個人主頁");
          Merlin.Play(
          "Explain");
          Merlin.Speak(
          "咳,這里收錄了和他朋友的文章。希望您能喜歡。");
          Merlin.Play(
          "Idle1_1");
          Merlin.Play(
          "Pleased");
          Merlin.Speak(
          "請進吧,我的客人");
          Merlin.MoveTo(
          600,300);
          Merlin.Play(
          "Surprised");
          Merlin.Speak(
          "哦對了,大家最近小心非典。多多注意哦");
          Merlin.Play(
          "Idle1_2");
          Merlin.Play(
          "GestureUp");
          Merlin.Speak(
          "祝您在這里愉快");
          Merlin.Play(
          "Read");
          Merlin.Hide();
          </script>
          </body>
          </html>
          <!--
          這里僅僅講述了Microsoft agent最最簡單用法。Microsoft Agent的目的是為我們提供一個語音命
          令環境,只是無奈于目前還沒有中文的語言包,我們還不能體會到他的便利。您可以參考MSDN
          里對Agent的語音用法的說明。
          PDF 文件使用 "pdfFactory Pro" 試用版本創建 ?w ww.fineprint.com.cn
          -->


          另一篇文章介紹的一種方法:

          <html>
          <body> 
          <SCRIPT> 
          <!--   
          function crml(nid)  
          {   
          try   
          {   
          nid
          =new ActiveXObject("Agent.Control.2");   
          nid.Connected 
          = true;   
          nid.Characters.Load(
          "");   
          return nid;   
          }
             
          catch (err)   
          {   
          return false;   
          }
             
          }
             
          function chplay ()   
          {   
          if (ml=crml ("ml"))   
          {   
          var MerlinID;   
          var MerlinACS;   
          Merlin 
          = ml.Characters.Character(MerlinID);   
          Merlin.MoveTo(
          200,200); 
          Merlin.Show();   
          Merlin.Play(
          "Explain");   
          Merlin.Play(
          "Announce");   
          Merlin.Speak(
          "修改成您想要說的話");   
          Merlin.Play(
          "Gestureright");   
          Merlin.Play(
          "Pleased"); 
          Merlin.Speak(
          "修改成您想要說的話");   
          Merlin.Play(
          "Idle1_1"); 
          Merlin.Hide(); 
          Merlin.MoveTo(
          600,300); 
          Merlin.Show(); 
          Merlin.Play(
          "Surprised");   
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "Read"); 
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "Read"
          Merlin.Play(
          "GestureUp"); 
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "DontRecognize"); 
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "DontRecognize");   
          Merlin.Play(
          "Greet"); 
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "Greet"); 
          Merlin.Speak(
          "修改成您想要說的話"); 
          Merlin.Play(
          "Greet"); 
          Merlin.Hide();   
          }
             
          }
             
          //-->   
          </SCRIPT> 

          <SCRIPT>   
          <!--   
          chplay()   
          -->   
          </SCRIPT> 
          </body>
          </html>


           

          posted on 2008-03-12 10:32 lk 閱讀(379) 評論(0)  編輯  收藏 所屬分類: ajax&jshtml
          主站蜘蛛池模板: 尉犁县| 思茅市| 彭山县| 十堰市| 克拉玛依市| 通渭县| 泽库县| 湘潭县| 自治县| 仙游县| 北宁市| 区。| 青神县| 宣化县| 竹山县| 务川| 黄石市| 措勤县| 东宁县| 沂南县| 凯里市| 浑源县| 凌云县| 洛川县| 南宫市| 邯郸市| 珲春市| 莱州市| 龙口市| 万安县| 溧阳市| 白城市| 顺昌县| 阿拉善右旗| 偃师市| 游戏| 拉孜县| 名山县| 阿鲁科尔沁旗| 乌兰察布市| 宁晋县|