VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net 线程处理画面

Private isStop As Boolean = False

 

    Dim th As Thread
    Public Sub TestThread()
        If th IsNot Nothing AndAlso th.IsAlive Then
            Return
        End If
        th = New Thread(AddressOf MyThreadProc)
        '启动线程
        th.Start()
    End Sub

 

    Dim aa As Integer = 1
    Public Sub MyThreadProc()
        '更新ui资源例子
        '实际更新界面
        While Not isStop
            Me.Invoke(New VoidDelegate(AddressOf UpdateText), "Modified by thread " + aa.ToString)
            Application.DoEvents()
            aa = aa + 1
            System.Threading.Thread.Sleep(5000)
        End While
    End Sub

 

    '定义委托
    Public Delegate Sub VoidDelegate(ByVal text As String)
    '定义方法
    Public Sub UpdateText(ByVal text As String)
        Label1.Text = text '"Modified by thread " + aa.ToString
    End Sub

 

   ‘启动线程

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        TestThread()
    End Sub

 

   ‘终止线程

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        ' isStop = True
        If th IsNot Nothing AndAlso th.IsAlive Then
            th.Abort()
            Me.Invoke(New VoidDelegate(AddressOf UpdateText), "Modified by thread over")
        End If
    End Sub


相关教程