'在窗体上添加一个CommandButtonPrivate Sub Command1_Click()
    Dim hThread As Long, hThreadID As Long
    hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf MyThread, ByVal 0&, ByVal 0&, hThreadID)
    CloseHandle hThread
End Sub’在模块中做如下声明
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Declare Function CreateThread Lib "kernel32" (lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long
Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As LongPublic Sub MyThread()
    '在这里放入你要作的事情
End Sub上面是一个非常简单的线程,你稍做修改即可完成你的事情。
但是一定要用线程才能完成的你事情吗?一般的就多用几个Timer控件也可以实现啊

解决方案 »

  1.   

    嗯,谢谢大哥。不过这句不怎么明白:
    hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf MyThread, ByVal 0&, ByVal 0&, hThreadID)
        CloseHandle hThread这句到底有什么作用?
      

  2.   

    "vb不是线程安全的"
    这是什么意思??是说线程不安全??那不会down机吧???
      

  3.   

    CreateThread是一API函数,创建一个线程序。
    非安全线程,意思是,VB不提供线程安全机制,所有的地方你得自己控制,弄不好就会Down
      

  4.   

    哦!还没说完,CloseHandle也是API函数,用来关闭一个句柄
    上面是关闭一个线程句柄
      

  5.   

    你为什么不用VB.net,他对进程很支持!
      

  6.   

    你可以将线程放在一个ActiveX Dll里面,注意使用P代码来编译
    最好装sp5再编译,据微软说p代码和本机代码编译结果有些不同,是VB的一个bug线程函数里不可以使用VB的内置函数,否则100%出错
      

  7.   

    to  programart_life(理论派)你的代码有些问题,当线程函数执行完后会出现内存不可写错误使用如下方法创建线程
    Dim hThread As Long, hThreadID As LongDim lNull as long
        lNull=0
        hThread = CreateThread(lNull, lNull, AddressOf MyThread, lNull, lNull, hThreadID)