作业帮 > 综合 > 作业

VB 如何判断 Microsoft Speech SDK 一句话说完 ,或者说说话已经结束.

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/16 22:51:02
VB 如何判断 Microsoft Speech SDK 一句话说完 ,或者说说话已经结束.
VB 如何判断 Microsoft Speech SDK 一句话说完 ,或者说说话已经结束.
是TTS吗?
我记得TTS可以是异步方式朗读的,有没有同步方式不记得了.如果是同步方式,就没有你说的问题,因为只有朗读完才可以继续执行后面的代码.如果是异步方式,应该会有一个属性标识是否正在朗读.即使没有这个属性,也可以自己做一个标识,开始朗读前赋值,中间做判断,结束后标识复原.
另外,TTS有个stop方法可以将朗读停止.
再问: 想过自己做标识,但是无法判断什么时候说完,我现在要实现的功能就是要判断是否说完,请大侠明示
再答: 试试下面的判断是否准确 if(voice.Status.RunningState == SpeechRunState.SRSEIsSpeaking ) 或 if(voice.Status.RunningState == SpeechRunState.SRSEDone )
再问: 试过了还是没有实现功能,我做了个实验的小程序,发上来劳烦大侠帮我改下,稍后给你追加分 Dim voice As SpVoice Private Sub Command1_Click() voice.Speak "Microsoft Speech SDK ", SVSFlagsAsync End Sub Private Sub Form_Load() Set voice = New SpVoice End Sub 我想上面那句话说完后将Text1.BackColor 改为绿色,劳烦大侠帮我改下
再答: 手头电脑没有vb和tts环境,今天下午或晚上帮你测试一下。
再问: 谢谢了,在你的提示我已近弄好了,很感谢你,马上采纳最佳。加下我QQ好吗?以后有什么问题大家可以互相交流 QQ:549624787