界面多线程的例子,高手请入!
需要书写以下一个多线程示例:
(1)主界面:
·一个按钮,button1,
·一个label控件,label1
·一个按钮button2
(2)子界面
按主界面button1后生成一个新的窗口Form2,此窗口中有控件label1,自动开始运行以下代码:
public sub Nowstart()
dim i as integer
for i=1 to 200
thread.currentthread.sleep(1000)
label1.text="现在处于"+i.tostring
next
end sub
即:可以执行一个循环,不断更新子界面(子窗口)中的lable1控件的显示信息
(3)主界面的button2及主线程
按主界面的button2后,不断执行
public sub mainbuton2()
dim i as integer
for i=1 to 2000
thread.currentthread.sleep(1000)
label1.text="现在处于"+i.tostring
next
end sub
这个代码。
(4)当子界面完成整个循环后,就会自动关闭,然后回到主界面上给出一个提示:
msgbox("子界面完成!")
我看过不少的网上代码,都没有涉及多窗口界面的问题,请大家帮助!
问题点数:50、回复次数:4Top
1 楼lsqkeke(可可)回复于 2006-03-05 11:57:36 得分 1
up
......Top
2 楼chinahth(淡若浮云)回复于 2006-03-05 23:05:24 得分 4
使用
Application.DoEvents()Top
3 楼zhouxiaotan(夜雨悠扬)回复于 2006-03-05 23:07:00 得分 45
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
Dim t As New Thread(AddressOf ThreadProc)
t.Start()
End Sub
Public Sub ThreadProc()
Dim rm As New Form4
rm.Show()
For i As Integer = 0 To 20 Step 1
Thread.Sleep(1000)
rm.Label1.Text = "现在处于" + i.ToString
Application.DoEvents()
Next
rm.Dispose()
Console.WriteLine("子界面完成")
Thread.CurrentThread.Abort()
End Sub
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
For i As Integer = 0 To 20 Step 1
Thread.CurrentThread.Sleep(1000)
Me.Label1.Text = "现在处于" + i.ToString
Application.DoEvents()
Next
End Sub
这样试一下Top
4 楼mint(mint)回复于 2006-03-05 23:27:22 得分 0
好的,谢谢
====mint的回复==============
Top




