读书人

苗苗老师.ACS 的使用

发布时间: 2012-06-21 13:42:41 作者: rapoo

苗苗老师.ACS 的应用
今天开此贴与朋友们一起学习讨论 苗苗老师.ACS在程序中的应用。
我先把我会的说出来供朋友们观摩。

1、怎么使用
(1)安装OFFICE2003时,选择安装OFFICE助手这样你的机子上就会有.ACS文件。
(2)新建一个工程
'用鼠标右击工具箱----->
'在弹出的右键菜单中选择"添加/移除项"菜单---->
'弹出"自定义工具箱"对话框----->
'切换到"COM组"件标签页----->
'在页表中选择Microsoft Agent Control 2.0 ----->
'单击确定后工具箱里就会多一个Microsoft Agent Control 2.0 控件
'双击到窗体
(3)在窗体上声明

VB.NET code
  Public 助手 As AgentObjects.IAgentCtlCharacterEx    Public 助手类型 As AgentObjects.IAgentCtlAudioObjectEx '定义助手类型


然后
VB.NET code
    Private Sub But闪亮登场_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles But闪亮登场.Click        '从文件中装载精灵        Dim 助手名称 As String = Com助手名称.Text        AxAgent1.Characters.Load(助手名称, Application.StartupPath + "\" & 助手名称 & ".ACS")        助手 = AxAgent1.Characters(助手名称)        助手.LanguageID = &H409 '设置语言为英文,只有这样它才可以说英文.        助手.Balloon.FontName = Me.Font.Name '设置气泡的字体,你还可以设置气泡的字体大小,颜色等.        '助手.Balloon.Style = 1 '不知到这个是干啥用的,但可以让提示文字一直有。而不是很快就消失。        助手.Show()    End Sub


VB.NET code
    Private Sub But完成动作_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles But完成动作.Click        Try            助手.Play(Com动作.Text)        Catch ex As Exception            MsgBox("无法完成")        End Try    End Sub


VB.NET code
    Private Sub Com动作_DropDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Com动作.DropDown        '显示所有可用动作        Com动作.Items.Clear()        For Each 动作名称 As String In 助手.AnimationNames            Com动作.Items.Add(动作名称)            My.Computer.FileSystem.WriteAllText("C:\Test.txt", 动作名称 & Chr(13) & Chr(10), True)        Next    End Sub


VB.NET code
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click        '第一移动到要显示的位置        Dim 位置X As Integer = Me.Left + But闪亮登场.Left + But闪亮登场.Width        Dim 位置Y As Integer = Me.Top + But闪亮登场.Top        助手.MoveTo(位置X, 位置Y)        '第二说出话        助手.Speak("我比较喜欢这个按钮,哈哈哈")        '助手.ShowPopupMenu(100, 400)        '第三做出相关动作        助手.Play("GestureRight")        '第四动作完成眨眼        '助手.Play("Greet")        助手.MoveTo(位置X - 1, 位置Y - 1)        '助手.Stop() '立马停止        '助手.Think("对不起,我刚才太入迷了") '思考出的文字    End Sub








还有好多玩法不会,看有没有高人指点一下,比如说:
1、如何让助手说出的话停留时间长一些?
2、如何让助手说出象MsgBox对话框一样的有是否选择的对话框?
3、苗苗老师有一个动作是走出来的,我想让打开程序时苗苗老师是走出来,而不是直接跳出来,怎么搞?
4、还有其它比较实用的功能都列出来学习学习嘛。


[解决办法]
office 助手和Microsoft Agent 不一样,曾经就这个问题和一个国外的MVP讨论过,OFFICE里面的助手是重新封装后的Microsoft Agent,不一样的,有些在OFFICE助手里简单的动作,如果要用Microsoft Agent做的话是需要自己封装Microsoft Agent的,很复杂的。如果直接调用OFFICE助手的话,则必须要求OFFICE环境支持,不好单独发布的。

读书人网 >VB Dotnet

热点推荐