专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

生手問題 大家幫下忙

发布时间:2011-06-23 15:55:27 文章来源:www.iduyao.cn 采编人员:星星草
新手問題 大家幫下忙
代碼如下:

Imports   System.Threading

Public   Class   Form1

        Private   Sub   Button1_Click(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   Button1.Click
                Dim   th1,   th2   As   Thread
                Dim   ym   As   AClass
                ym   =   New   AClass
                th1   =   New   Thread(New   ThreadStart(AddressOf   ym.Method1))
                th2   =   New   Thread(New   ThreadStart(AddressOf   ym.Method2))
                th1.Start()
                th2.Start()
        End   Sub

End   Class

Public   Class   AClass

        Public   Sub   Method1()
                Dim   i   As   Integer
                For   i   =   1   To   100
                        listbox1.items.add( "這是線程一: "   &   i)
                Next   i
        End   Sub

        Public   Sub   Method2()
                Dim   ii   As   Integer
                For   ii   =   1   To   100
                        listbox1.items.add( "這是線程二: "   &   ii)
                Next   ii
        End   Sub

End   Class


編譯不了說提示:Name   "listbox1 "   is   not   declared

大俠們,要如何才行呀



------解决方案--------------------
你的listbox1在UI 线程中,不能这样使用。
Public Class AClass

Public Sub Method1()
Dim i As Integer
For i = 1 To 100
listbox1.items.add( "這是線程一: " & i))////????问题在这里
Next i
End Sub

Public Sub Method2()
Dim ii As Integer
For ii = 1 To 100
listbox1.items.add( "這是線程二: " & ii)////????问题在这里
Next ii
End Sub

可以采用将listbox1.items.add用另外一个方法实现,而在哪个地方采用me.invoke(方法名).
你可以试一试.
------解决方案--------------------
也就是将后台线程移交给UI线程.
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: