yyg1107

这家伙很懒,什么都没有留下
posts(15) comments(20) trackbacks(0)
  • BlogJava
  • 联系
  • RSS 2.0 Feed 聚合
  • 管理

公告

联系方式:     



常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论

留言簿

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类(11)

  •  axis(1)
  •  hibernate(1)
  •  java(2)
  •  js(2)
  •  other(5)

随笔档案(8)

  • 2008年6月 (1)
  • 2007年8月 (2)
  • 2007年4月 (3)
  • 2006年11月 (2)

文章分类(37)

  •  C++Builder(3)
  •  eclipse(2)
  •  html(4)
  •  java(8)
  •  jbpm(6)
  •  JS(4)
  •  other(4)
  •  question handly!(4)
  •  web容器(1)
  •  workflow(1)

文章档案(36)

  • 2007年4月 (2)
  • 2007年3月 (1)
  • 2007年1月 (2)
  • 2006年12月 (2)
  • 2006年11月 (3)
  • 2006年10月 (11)
  • 2006年9月 (2)
  • 2006年7月 (2)
  • 2006年6月 (1)
  • 2006年5月 (1)
  • 2006年4月 (6)
  • 2006年3月 (3)

新闻档案(1)

  • 2007年1月 (1)

收藏夹(16)

  •  好的BLOG(9)
  •  收藏----blog(7)

JavaBlog

  • amigoxie

matrix

搜索

  •  

积分与排名

  • 积分 - 32914
  • 排名 - 1316

最新评论

  • 1. re: JS实现文本框输入提供选择框的提示功能-1
  • werewrewrwer
  • --wrewrwe
  • 2. re: struts启动的一个错误!
  • 更名struts-config.xml, remove && add struts capability,重新生成一个config.xml。
  • --barryken
  • 3. p
  • 42
  • --2
  • 4. re: hql语句----随机查询取头10条记录[未登录]
  • 没意思,这不就是分页的那一部分代码嘛!
  • --啊啊
  • 5. re: 第一次做成功的AXIS例子[未登录]
  • 楼主:能不能留下你的联系方式!探讨一下相关问题...
  • --hehe

阅读排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7301)
  • 2. 第一次做成功的AXIS例子(2433)
  • 3. 命令行创建ODBC数据源(1547)
  • 4. struts启动的一个错误!(1269)
  • 5. hibernate调用存储过程例子(1010)

评论排行榜

  • 1. JS实现文本框输入提供选择框的提示功能-1(7)
  • 2. 第一次做成功的AXIS例子(5)
  • 3. struts启动的一个错误!(4)
  • 4. 转:如何在JAVA中使用日期 (0)
  • 5. 命令行创建ODBC数据源(0)

View Post

让你的网页更精彩 - Javascript 调用MSAgent

(本文假设您使用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() 读入要使用的角色,他有两个参数,第一个是角色的姓名,第二个是角色存储的文件。

这里顺便说一下,Microsoft Agent角色都保存在Windows目录下的MSAgent文件夹中的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(
" 欢迎来到detrox的个人主页 " ); 

Merlin.Play(
" Explain " ); 

Merlin.Speak(
" 咳,这里收录了detrox和他朋友的文章。希望您能喜欢。 " ); 

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的语音用法的说明。

posted on 2007-01-20 14:51 young 阅读(234) 评论(0)  编辑  收藏 所属分类: JS

新用户注册  刷新评论列表  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问   管理
相关文章:
  • 浮动框
  • 让你的网页更精彩 - Javascript 调用MSAgent
  • javascript技巧
  • 自动提示效果
 
 
Powered by:
BlogJava
Copyright © young