zoukankan      html  css  js  c++  java
  • MS Agent桌面宠物插件浅析

    1.       点击安装“MSagent组件安装.exe”安装MSagent组件

        Agent控件的主要属性如下表:

    •   属性 用途:

    Charactors 用于设置与控件相关联的动画角色文件

    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 显示停止写的动作

    当然,我们也可以从http://www.microsoft.com/msagent/downloads/developer.asp网页单击“Download the Microsoft Agent Character Editor(1Mb exe)”和“Download the Microsoft Agent Linguistic InformationSound Editing Tool(6.2Mb exe)”下载制作工具,亲自制作自己所钟爱的动画角色形象。

    3.       C#中使用MSagent组件开发桌面宠物

    •   打开VS.Net,新建一个Winform工程 
    •  选择菜单:工具->自定义工具箱,并选择Microsoft Agent Control 2.0组件 
    •   将Microsoft Agent Control控件拖入到窗体上 
    •   设计界面如下:

             

     

    •   完整源代码

    using System;

    using System.Collections.Generic;

    using System.ComponentModel;

    using System.Data;

    using System.Drawing;

    using System.Text;

    using System.Windows.Forms;

    using AgentObjects;//

    using AxAgentObjects; //

     

    namespace CoolUI

    {

        public partial class Form1 : Form

        {

            public Form1()

            {

                InitializeComponent();

            }

     

            private IAgentCtlCharacterEx Character;//创建对象 

            //Microsoft Agent的精灵:吉尼(Genie)、么林(Merlin)、罗比(Robby)和皮蒂(Peedy

     

            /// <summary>

            /// 导入

            /// </summary>

            /// <param name="sender"></param>

            /// <param name="e"></param>

            private void button1_Click(object sender, EventArgs e)

            {

                axAgent1.Characters.Load("Robby", (object)"Robby.acs");//导入罗比这个精灵

                Character = axAgent1.Characters["Robby"];//初始化罗比

                Character.LanguageID = 0x409;//把语言设置为英语,这里不能是中文

                Character.Show();//显示精灵

            }

     

            /// <summary>

            /// 朗读

            /// </summary>

            /// <param name="sender"></param>

            /// <param name="e"></param>

            private void button2_Click(object sender, EventArgs e)

            {

                Character.Speak(textBox1.Text, null);//让精灵朗读文本

            }

     

            /// <summary>

            /// 隐藏

            /// </summary>

            /// <param name="sender"></param>

            /// <param name="e"></param>

            private void button3_Click(object sender, EventArgs e)

            {

                Character.Hide();

            }

     

            /// <summary>

            /// 谢谢

            /// </summary>

            /// <param name="sender"></param>

            /// <param name="e"></param>

            private void button4_Click(object sender, EventArgs e)

            {

                Character.Play("Acknowledge");//执行谢谢动作,可以选择更多动作

            }

        }

    }

    组件下载:http://cid-19bddddceef748b0.office.live.com/self.aspx/.Public/MSAgent%e6%a1%8c%e9%9d%a2%e5%ae%a0%e7%89%a9.rar

  • 相关阅读:
    信息化基础建设 ORM 常见错误
    信息化基础建设 消息引擎
    Enterprise Library:日志的两种需求
    DDD:将概念显式化 之 验证规约
    技术人生:与其鸟宿檐下,不如击翅风雨
    DDD:传统三层架构向DDD的转换
    设计原则:意图导向编程的优点
    Entity Framework:数据库初始化的三种机制
    技术人生:使用价值观、原则和模式来理性的做设计和编程
    技术人生:人的差别在于业余时间
  • 原文地址:https://www.cnblogs.com/mane/p/2024619.html
Copyright © 2011-2022 走看看