Foxtable(狐表)用户栏目专家坐堂 → 循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav播报几遍后,同时来 播放 文字


  共有2378人关注过本帖树形打印复制链接

主题:循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav播报几遍后,同时来 播放 文字

帅哥哟,离线,有人找我吗?
ycwk
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1229 积分:8566 威望:0 精华:0 注册:2016/2/2 21:52:00
循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.wav播报几遍后,同时来 播放 文字  发帖心情 Post By:2018/9/12 8:20:00 [只看该作者]

循环中铃声和文字轮换进行语音播报,但每次都会把前面的新报障信息提示音.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

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 8:52:00 [只看该作者]

播放文字的时候,应该使用同步的方式,而不能是异步。

 回到顶部