当你打开Microsoft Word后,画面上就会出现一个Office 助手,看着孙悟空不但会不停地变换角色,而且还会根据情况,出现相应的提示。
角色动画实例(上)
角色动画实例
准备工作已经完成,现在我们就立即来着手在应用成程序中做一个角色动画效果(注:本文为了便于演示,应用程序仅包括一个窗口,编程工具采用VFP7.0)。
1. 安装Agent控件:选择菜单工具“选项”,在ActiveX列表框中选择Microsoft Aent Control 2.0,安装在工具面板上。
2. 新建一应用程序,仅需一个表单,如图。
表单设计样式
3. 调用角色数据:
载入动画角色
ThisForm.Olecontrol1.Characters.Load("merlin", "merlin.ACS")
oChar = ThisForm.Olecontrol1.Characters("merlin")
oChar.MoveTo(RAND()*600, RAND()*600)
oChar.Show
*将角色数据文件中的动画名称加入动画文件列表框,有许多动画在文件中不能找到,因此通过载入动画名称让用户选择。
For Each cAnimName in oChar.AnimationNames
ThisForm.AnimNames.AddItem(cAnimName)
ochar.play(canimname)*可能有的动画循环播放,因此有的动画可能无法显示。
EndFor
开场介绍
ochar.languageid=0x409
oChar.Speak("Hello empthere!|Hey, pau=600all you boys and girls.|Greetings, and felicitations.")
oChar.Speak("Welcome to DevCon, my friends.")
播放指定的角色动画
OChar.Play(ThisForm.lbxAnimNames.DisplayValue)
阅读指定文本
oChar.languageid=0x409*指定语言种类,0X409代表美式英语
oChar.Speak(ThisForm.txtSpeak.Value’)
由于TTS引擎不支持中文,因此如果要阅读中文,可以按如下方法:
将要阅读的汉语文本通过录音制作成WAV文件,如SNDFILE.WAV
oChar.languageid=0x804;//指定语言种类,0X804代表中文
oChar.speak(‘你好!’,’SNDFILE.WAV’);//SNDFILE.WAV及为制作的声音文件
停止循环播放的动画
oChar.Stop
卸载动画角色
With ThisForm
.Olecontrol1.Characters.Unload("merlin")
.AnimNames.Clear
Endwith
网友评论