1.点击安装“MSagent组件安装.exe”安装MSagent组件
Agent控件的主要属性如下表:
Connected用于判别控件是否与Agent服务器相连接
LanguageID用于设置Agent所使用的语言,目前仅可设置为十六进制的“409”,即“&H409”
Agent控件的主要方法如下表:
方法用途
Load用于初始化Agent控件,并加载动画角色数据文件
UnLoad用于卸载动画角色数据文件
Show用于显示的Agent动画角色,并可通过参数控制动画角色的显示速度
Hide用于隐藏的Agent动画角色,并可通过参数控制动画角色的隐藏速度
StopAll用于停止动画角色的所有动作
Stop用于停止动画角色的当前动作
MoveTo用于移动动画角色,可通过参数来设置移动的坐标和移动的速度
Interrupt用于中断动画角色的动画,在执行一些有持续性的动画动作时,如不
中断该动作即执行下一个动作,会产生异常现象
Wait用于在多个动画角色间实现相互之间的动作协调
Play用于执行指定的动画动作,可通过参数来设置动画类型
Speak用于通过语音合成引擎,实现英语的语音合成输出功能,即只需要输入
英文字符串,Agent即可通过声音输出设备“说话”
Agent控件的主要事件如下表
Show在Agent动画角色显示时触发,可利用该事件将程序的主界面隐藏
Hide在Agent动画角色隐藏时触发,可利用该事件将程序的主界面重新显示
2.选择一种角色文件安装:
微软公司网站所提供的动画角色文件,主要包括Genie(妖怪、鬼)、Robby(机器人)、Merlin(么林)、Peedy(睡衣)共四种动画角色,它们不但有丰富的行为动作,而且具有语言功能,其对应的文件名分别为Genie.acs、Robby.acs、Merlin.acs、Peedy.acs。这些Agent角色的常用动画动作,通常用含有相同意义的英文单词字符来标识,可以通过编程控制
Acknowledge显示承认、答谢的动作
Alert显示警告的动作
Announce显示宣布、通告的工作
Blink显示眨眼的动作
Decline显示摇头拒绝的动作
DoMagic1、DoMagic2显示指挥演奏的动作
Confused显示迷惑的动作
Congratulate显示祝贺的动作
DontRecognize显示无法识别的动作
Explain显示解释的动作
GesttureDown显示向下方向的手势动作
GesttureLeft显示向左方向的手势动作
GesttureRight显示向右方向的手势动作
GesttureUp显示向上方向的手势动作
GetAttention显示立正的动作
GetAttentionContinued显示继续立正的动作
GetAttentionReturn显示继续立正的动作
Greet显示问候的动作
Hearing_1
Hearing_2显示左右聆听的动作
Hearing_3
Hide隐藏动画角色
Idle1_1显示舒展的动作
Idle1_2显示向左倾的动作
Idle1_3显示向右倾的动作
Idle1_4显示向后倾的动作
Idle1_5显示向前倾的动作
Idle2_1显示带耳机听音乐的动作
Idle2_2显示吃饼干的动作
Idle3_1显示带耳机听音乐的动作
Idle3_2显示瞌睡的动作
Idle3_3显示带耳机听音乐的动作
LookDown显示向下查看的动作
LookDownBlink显示向下眨眼的动作
LookDownLeft显示向左下方查看的动作
LookDownLeftBlink显示向左下方眨眼的动作
LookDownLeftReturn显示回返向左下方查看的动作
LookDownRight显示向右下方查看的动作
LookDownRightBlink显示向右下方眨眼的动作
LookDownRightReturn显示回返向右下方查看的动作
LookDownReturn显示回返向下方查看的动作
LookLeft显示向左方查看的动作
LookLeftBlink显示向左方眨眼的动作
LookLeftReturn显示回返向左方查看的动作
LookRight显示向右方查看的动作
LookRightBlink显示向右方眨眼的动作
LookRightReturn显示回返向右方查看的动作
LookUp显示向上查看的动作
LookUpBlink显示向上眨眼的动作
LookUpLeft显示向左上方查看的动作
LookUpLeftBlink显示向左上方眨眼的动作
LookUpLeftReturn显示回返向左上方查看的动作
LookUpRight显示向右上方查看的动作
LookUpRightBlink显示向右上方眨眼的动作
LookUpRightReturn显示回返向右上方查看的动作
LookUpReturn显示回返向上方查看的动作
MoveDown显示向下移动的动作
MoveLeft显示向左移动的动作
MoveRight显示向右移动的动作
MoveUp显示向上移动的动作
Pleaseed显示愉快的动作
Process显示处理工作的动作
Processing显示正在处理工作的动作
Read显示阅读的动作
Readcontinued显示继续阅读的动作
Reading显示正在阅读的动作
ReadReturn显示停止阅读的动作
Sad显示悲伤的动作
Search显示查找的动作
Searching显示正在查找的动作
Show显示动画角色
StartListening显示开始聆听的动作
StopListening显示停止聆听的动作
Suggest显示建议的动作
Surprised显示惊讶的表情
Think显示思考的表情
Thinking显示正在思考的表情
Uncertain显示不确定的动作
Wave显示致意的动作
Write显示写的动作
Writecontinued显示继续写的动作
Writing显示正在写的动作
WritReturn显示停止写的动作
3.C#中使用MSagent组件开发桌面宠物
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
usingAgentObjects;//
usingAxAgentObjects;//
namespaceCoolUI
{
publicpartialclassForm1:Form
publicForm1()
InitializeComponent();
}
privateIAgentCtlCharacterExCharacter;//创建对象
//MicrosoftAgent的精灵:吉尼(Genie)、么林(Merlin)、罗比(Robby)和皮蒂(Peedy)
///
///导入
///
///
///
privatevoidbutton1_Click(objectsender,EventArgse)
axAgent1.Characters.Load("Robby",(object)"Robby.acs");//导入罗比这个精灵
Character=axAgent1.Characters["Robby"];//初始化罗比
Character.LanguageID=0x409;//把语言设置为英语,这里不能是中文
Character.Show();//显示精灵
///朗读
privatevoidbutton2_Click(objectsender,EventArgse)
Character.Speak(textBox1.Text,null);//让精灵朗读文本
///隐藏
privatevoidbutton3_Click(objectsender,EventArgse)
Character.Hide();
///谢谢
privatevoidbutton4_Click(objectsender,EventArgse)
Character.Play("Acknowledge");//执行谢谢动作,可以选择更多动作