一星期了,终于稍微明白点了怎么托管,怎么对窗体控件进行线程安全调用
接触vb.net一星期了,现在终于稍微明白点了怎么进行托管,
怎么对窗体控件进行线程安全调用
先记下,有空贴代码
比较关键的代码有
'--窗体------------------------------
Public NewThread As Thread
Public Delegate Sub InvokeControl()
Dim _InvokeControl As InvokeControl
......
AddHandler 对象.事件, AddressOf 托管方法
处理方法
_InvokeControl = AddressOf 处理方法
NewThread = New Threading.Thread(New Threading.ThreadStart(AddressOf 类.方法))
NewThread.IsBackground = True '设置当前线程为后台
NewThread.Start()
Sub 处理方法
With 对象
.text = "www.i5school.com"
End With
End Sub
Public Sub 托管方法
对象.Invoke(_InvokeControl)
End Sub
'--类------------------------------
Public Class 类
Public Event 事件
Public Sub 方法
...
RaiseEvent 事件 '触发类、窗体或文档中在模块级声明的事件
End Sub
End Class
注意,委托必须基于类 --------------------编程问答-------------------- 恭喜了 --------------------编程问答-------------------- UP --------------------编程问答-------------------- 恭喜楼主了!以前也给这个问题搞的晕的很。 --------------------编程问答-------------------- up. --------------------编程问答-------------------- 我还没有搞清楚呢。
--------------------编程问答-------------------- !!!!!!!!!!!!!!!!!!!!!!! --------------------编程问答-------------------- UP --------------------编程问答-------------------- ....................... --------------------编程问答-------------------- --------------------编程问答-------------------- study. --------------------编程问答-------------------- 恭喜! --------------------编程问答-------------------- 我还没有搞清楚呢,能详细点吗, --------------------编程问答--------------------
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub botton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles botton1.Click
Me.Close()
End Sub
这个就是最简单的托管,是我们最常见的。
窗体的加载事件托管为窗体类的加载事件。
简单举例吧,这样好理解些:
“我想抽烟,于是托朋友替我买烟。”===>>
Private Sub 朋友买烟(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 我想抽烟
'此处的sender就是我
End Sub
现在明白了吧?哈哈
继续,
AddHandler 对象.事件, AddressOf 托管方法
AddHandler 我想.抽烟, AddressOf 朋友买烟
不要把它想的太复杂,想的人性化一点就容易理解并接受了,毕竟程序就是模拟现实世界的所有的。
但往往越是我们习以为常容易忽略的东西,却有着更深的含义,就像牛顿因看到苹果落地继而研究最终发现了万有引力一样。
所以,你是你,我是我,而牛顿是牛顿。
补充:.NET技术 , VB.NET