以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav播报几遍后,同时来 播放 文字 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=124693) |
-- 作者:ycwk -- 发布时间:2018/9/12 8:20:00 -- 循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav播报几遍后,同时来 播放 文字 循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav连续播报几遍,同时播放 文字,请老师看看代码是否有问题? 我希望是播放完一遍wav后,再播放文字,然后再进行第二个循环,如此往复。 If Date.today.DayOfWeek >= 1 AndAlso Date.today.DayOfWeek <= 5 AndAlso (format(Date.Now, "HHmm") <= "1200" Or format(Date.Now, "HHmm") >= "1430") Then \'在周一到周五的 12:00以前和14:30以后,都播报 DataTables("自助报障记录表").Load For Each nr As DataRow In DataTables("自助报障记录表").DataRows If nr("问题描述") <> Nothing And nr("问题处理状态")="继续跟进" Then Dim sp_str As String= nr("计算机中心责任人") & "有报障仍未解决,请注意:" & nr("所在楼") & nr("所在科室") & nr("所在房间") & nr("三级分类") \'下面是不能调用函数的,以防第一轮调用的提示音还没播完就在调用第二轮的播放函数了,就会连续听到N个提示音 Audio.play("Voice\\新报障信息提示音.wav",AudioPlayMode.WaitToComplete) \'播放提示音,并且要等它播放完毕 sp.Speak(sp_str, DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync) \'异步 End If Next End If
|
-- 作者:有点甜 -- 发布时间:2018/9/12 8:52:00 -- 播放文字的时候,应该使用同步的方式,而不能是异步。 |