VB.NET中如何向后台线程的BackGroundWorker传递参数?

2026-05-08 12:033阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计228个文字,预计阅读时间需要1分钟。

VB.NET中如何向后台线程的BackGroundWorker传递参数?

csharpImports SpeechLib

Public Class Form1 Public vox As Object=CreateObject(sapi.spvoice)

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

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?

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

BackgroundWorker1.RunWorkerAsync(text2)

在BackgroundWorker1_DoWork中,检索参数的值

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

VB.NET中如何向后台线程的BackGroundWorker传递参数?

本文共计228个文字,预计阅读时间需要1分钟。

VB.NET中如何向后台线程的BackGroundWorker传递参数?

csharpImports SpeechLib

Public Class Form1 Public vox As Object=CreateObject(sapi.spvoice)

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

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?

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

BackgroundWorker1.RunWorkerAsync(text2)

在BackgroundWorker1_DoWork中,检索参数的值

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

VB.NET中如何向后台线程的BackGroundWorker传递参数?