不明白的一个线程问题?

tihua 2005-05-11 08:59:10
Dim t As New Thread(AddressOf add1)
t.IsBackground = True
t.Start()

Private Sub tree1()
Dim t1 As New TreeNode
t1.Text = "制品厂"
t1.Tag = "01"
Me.TreeView1.Nodes.Add(t1)'到了这行出了错,不明白
End Sub


未处理的“System.InvalidOperationException”类型的异常出现在 system.windows.forms.dll 中。

其他信息: 在该控件上执行的操作正被错误的线程调用。必须使用 Control.Invoke 或 Control.BeginInvoke 封送到正确的线程才能执行此操作。
...全文
101 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tihua 2005-05-11
  • 打赏
  • 举报
回复
有没vb.net的代码?
tihua 2005-05-11
  • 打赏
  • 举报
回复
试试先
兔子-顾问 2005-05-11
  • 打赏
  • 举报
回复
Up ,还可以这样啊。长见识了。
速马 2005-05-11
  • 打赏
  • 举报
回复
Control.Invoke需要一个delegate参数
比如:

void ChangeBackColor()
{
this.BlackColor = Color.Black;
}
...
Delegate d = new ThreadStart(ChangeBackColor);
this.Invoke(d);
tihua 2005-05-11
  • 打赏
  • 举报
回复
Sunmast(速马, C++/CLI
能简单说说control.invode是什么?给个例子是明一下吧,谢谢了
速马 2005-05-11
  • 打赏
  • 举报
回复
在主线程内操作窗体
如果需要在别的线程内操作,请用Control.Invoke,这是标准做法
tihua 2005-05-11
  • 打赏
  • 举报
回复
不明白以下这名话的意思,帮忙理解一下:

必须使用 Control.Invoke 或 Control.BeginInvoke 封送到正确的线程才能执行此操作

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧