vb点虐 多线程显示的简单介绍

VB.NET多线程程序问题

在多线程中你需要定义委托来修改控件属性

专业领域包括成都做网站、成都网站建设、成都外贸网站建设商城网站定制开发、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联建站的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。

比如你修改Textbox属性,则:

Delegate Sub dl_ShowTextbox(ByVal iStr As String)

Public Sub ShowTextbox(ByVal iStr As String)

If Textbox.IsDisposed Then

Return

End If

If Textbox.InvokeRequired = True Then

Dim pInvoke As New dl_ShowTextbox(AddressOf ShowTextbox)

Me.Invoke(pInvoke, New Object() {iStr})

Else

Textbox.Text = iStr

End If

End Sub

在多线程中调用

ShowTextbox( "要显示的内容" )

VB点虐 多线程让两个ListBox同步显示,出现操作无效错误,请高手帮忙解决,最好附修改方法,谢谢啦 !

楼上回答不对,这个问题很常见,就是在线程中使用到了控件,在这种状况下,不能直接操作控件属性,而只能通过委托的方法去实现

VB点虐 多线程 控件显示问题

invoke 不是创建线程,功能类似于 call ,还有设置 Control.CheckForIllegalCrossThreadCalls = false 是能让线程不安全访问控件(两个线程同时访问同一控件时可能会造成死锁)而不引发错误.创建线程可以用 threading.thread 类 , BackgroundWorker 控件 , 线程池 , 委托 .


网页名称:vb点虐 多线程显示的简单介绍
浏览地址:http://hbruida.cn/article/ddgjsdc.html