
VB中如何利用Createthread实现多线程能给个最简单的例子吗
谢谢了大概知道工作原理了~~你代码种不能出现doevents,这样画面会一闪就关闭了,而且删除线程的时候也有点问题,删除了但是程序还是不能关闭,不过还是谢谢了额...
谢谢了大概知道工作原理了~~你代码种不能出现doevents,这样画面会一闪就关闭了,而且删除线程的时候也有点问题,删除了但是程序还是不能关闭,不过还是谢谢了额
展开
1个回答
展开全部
Option Explicit
Public Declare Function CreateThread Lib "kernel32" (ByVal lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long
Public Declare Function TerminateThread Lib "kernel32" (ByVal hThread As Long, ByVal dwExitCode As Long) As Long
Public id As Long
Public Function AddText()
Do
Form1.Text1.Text = "Adding to Text1 - "
doevents
Loop
End Function
Option Explicit
Private Sub Command1_Click()
id = CreateThread(ByVal 0&, ByVal 0&, AddressOf AddText, ByVal 0&, 0, id)
End Sub
Private Sub Command2_Click()
Call TerminateThread(id, ByVal 0&)
End Sub
//PS 请注意里面所用到的控件...
Public Declare Function CreateThread Lib "kernel32" (ByVal lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long
Public Declare Function TerminateThread Lib "kernel32" (ByVal hThread As Long, ByVal dwExitCode As Long) As Long
Public id As Long
Public Function AddText()
Do
Form1.Text1.Text = "Adding to Text1 - "
doevents
Loop
End Function
Option Explicit
Private Sub Command1_Click()
id = CreateThread(ByVal 0&, ByVal 0&, AddressOf AddText, ByVal 0&, 0, id)
End Sub
Private Sub Command2_Click()
Call TerminateThread(id, ByVal 0&)
End Sub
//PS 请注意里面所用到的控件...
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询