VB.net可以多线程控制同一个窗体及其控件吗
发布网友
发布时间:2022-04-19 14:08
我来回答
共2个回答
热心网友
时间:2023-10-09 20:28
不可以,但是能够在主线程的基础上调用委托(Invoke)。(主线程会被占用)
例子:
Dim thr As Threading.Thread
Public Delegate Sub VoidDelegate()
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
thr = New Threading.Thread(AddressOf Where)
thr.Start()
End Sub
Public Sub Where()
Me.BeginInvoke(New VoidDelegate(AddressOf WhereThr))
End Sub
Public Sub WhereThr()
Me.TextBox.text="0123456789"
End Sub
(Invoke)这种情况下,主线程被占用,所有由主线程执行程序,都将被(wherethr函数执行结束)后执行。
热心网友
时间:2023-10-09 20:29
把你想控制的空间的Modifiers的属性设置成Public 之后就可以控制这个控件了 如图 代码: WCAD004N01 WCAD004N_02 = new WCAD004N01(); WCAD004N_02.tabControl1.TabPages.RemoveAt(0); WCAD004N_02.Text = "转课"; WCAD004N_02.ShowDialog();