vbnet中多线程委托案列(跨线程操作控件)

 时间:2026-02-15 15:26:58

1、新建一个工程,在界面上面加一个按钮和标签,如图

vbnet中多线程委托案列(跨线程操作控件)

2、在准备委托之前需要准备以下过程,一个是委托的sub,一个是真正操作界面的sub,说白了委托就是两重调用,A调用b,b再调用c,最终实现功能。在最上面定义一个委托的类(可以根据需要增加),你这个委托的类必须和你的操作界面的sub有一样的参数,最好写一样,不然会出现签名不一样而错 如圈圈内的东东

vbnet中多线程委托案列(跨线程操作控件)

3、大家出现的问题可能是这样的,在按钮的事件里面直接建立一个线程,然后调用操作界面的代码,结果就是错错。线程间操作无效。。。看下面的解决办法

vbnet中多线程委托案列(跨线程操作控件)

vbnet中多线程委托案列(跨线程操作控件)

4、通过双重调用,按钮建立一个线程并触发,这个线程指向sub weituo(),

在sub weituo ()里面调用委托me.invoke(new delegate(addressof chaozuo),"叽叽哇哇"),,这个invoke里面的不能是直接的sub,要是delegate类的,就是第一段定义的委托类,这样才行。如图

vbnet中多线程委托案列(跨线程操作控件)

5、现在一点按钮就可以出现你要的效果了,这样是标准的做法。

vbnet中多线程委托案列(跨线程操作控件)

6、需要注意的是,如果的操作界面的sub  是用参数的,那么你的invoke 在写了委托类之后需要在后面带上对应类型的参数。

vbnet中多线程委托案列(跨线程操作控件)

  • WPF与Winform互操作:[1]Winform调用WPF窗体
  • 三国志汉末霸业中仁者无敌如何使用
  • 魔兽世界骑乘仙鹤坐骑在哪买如何获得
  • 【火车教程】如何将已发布的数据再次发布?
  • elementUI如何设置checkbox最少勾选数量为1个
  • 热门搜索
    开机密码忘了怎么办 炒外汇怎么开户 学习简历怎么写 怎么查中考成绩 pdf怎么合并 胃口不好怎么调理 moncler怎么读 怎么提高打字速度 守望先锋怎么下载 鞋子大了怎么办