【问题标题】:How to pass arguments to a BackGroundWorker如何将参数传递给 BackGroundWorker
【发布时间】:2011-02-07 20:09:33
【问题描述】:
Imports SpeechLib

Public Class Form1
    Public vox = CreateObject("sapi.spvoice")

    Private Sub cmdSpeak_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSpeak.Click
        Dim text2 As String = "Hello , This is a Text. Hello , This is a Text."
        BackgroundWorker1.RunWorkerAsync()
    End Sub

    Private Sub cmdPause_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPause.Click
        vox.pause()
    End Sub

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim SVEPhoneme As Integer = 64
        vox.EventInterests = SVEPhoneme
        vox.AlertBoundary = SVEPhoneme
    End Sub

    Private Sub cmdResume_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdResume.Click
        vox.resume()
    End Sub

    Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
        vox.Speak(Text, SpeechVoiceSpeakFlags.SVSFlagsAsync)
    End Sub
End Class

如何将 text2 传递给 vox.speak?

【问题讨论】:

    标签: vb.net backgroundworker sapi


    【解决方案1】:

    cmdSpeak_Click中,将text2作为参数传递给RunWorkerAsync

    BackgroundWorker1.RunWorkerAsync(text2)
    

    BackgroundWorker1_DoWork中,取回参数的值

    vox.Speak(DirectCast(e.Argument, String), SpeechVoiceSpeakFlags.SVSFlagsAsync)
    

    【讨论】:

    • 抱歉这个愚蠢的问题,但是如何在 cmdSpeakClick 中添加 text2 作为参数?
    • 喜欢这个Private Sub cmdSpeak_Click(ByVal sender As System.Object, ByVal e As System.EventArgs, ByVal text2 As String) Handles cmdSpeak.Click ??
    • 把你的BackgroundWorker1.RunWorkerAsync()换成我的BackgroundWorker1.RunWorkerAsync(text2)
    • 顺便问一下,我如何在播放或暂停后停止音频?
    • 我不知道。这将是一个新问题的基础。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-09
    • 2012-12-21
    相关资源
    最近更新 更多