资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

vb点虐 多窗体编程 vb中多个窗体如何运行

vb点虐 如何让两个窗体并发运行

Imports System.Threading

创新互联总部坐落于成都市区,致力网站建设服务有成都网站制作、成都网站设计、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序开发、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!

Public Class Form1

Dim t1, t2 As Thread

Dim tt1

Private Delegate Sub voiddelegate(ByVal i As Integer)

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Form2.Show()

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

t1 = New Thread(AddressOf test)

tt1 = 1

t1.Start()

tt1 = 2

t2 = New Thread(AddressOf test)

t2.Start()

' Timer1.Start()

End Sub

Private Sub updateui(ByVal i As Integer)

Form2.Label1.Text = i.ToString

Form2.Label2.Text = i.ToString

End Sub

'把循环放到线程中运行会好一些,其实主要事务是对窗体控件的操作时多线程意义不大,因为访问窗体的代码依然要在窗体线程中运行。

Private Sub test()

Dim d As voiddelegate = AddressOf updateui

For i = 0 To 9000

Me.Invoke(d, i)

Next

End Sub

'如果放在计时器中运行效果好的多

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Static i As Integer = 0

i += 1

If i 9000 Then Timer1.Stop() : i = 0

Form2.Label1.Text = i.ToString

Form2.Label2.Text = i.ToString

End Sub

End Class

'如果在另一线程中用Application.run 打开窗体确实能行,不过窗体间相互操作不起作用,这个尚待研究中。

在VB.NET中怎么实现多窗体同步

建立一个名为 modGeneral 的模块并加入下面一行代码:

Friend DataStuff As DataClass

这一行代码为我的新类 DataClass 创建了一个友元变量,使你可以完全访问程序集,对这个简单例子来说,也就是指完整的应用程序。然后我添加了下面的代码到 Form1 的 Load 事件:

DataStuff = New DataClass

Me.txt1stData.DataBindings.Add("Text", DataStuff, "MyData")

Me.txt2ndData.DataBindings.Add("Text", DataStuff, "MoreData")

第一行建立一个 DataClass 新实例。下面两行代码将数据绑定到 textbox 控件。对这个窗体而言,就这么些操作!

现在,你怎样让它们与 Form2 和其它窗体上的数据同步呢?将下面两行加入到 Form 2 的窗体load 事件中去:

Me.txt1stData.DataBindings.Add("Text",DataStuff, "MyData")

Me.txt2ndData.DataBindings.Add("Text",DataStuff, "Moredata")

这个方法容易确保所有窗体上的几乎任何类型的数据处于同步状态。你可以简单地将控件绑定到某个类的相同实例上,这就行了。

VB.NET多窗体的问题

保证form 2 同时运行就行。

不想看见from2 ,

form2可以隐藏运行:form2.hide

也可以设置成透明的 form2.opacity=0

vb点虐 怎么实现一个列表可以在多个窗体上使用

给你个例子

新建两个窗体Form1,Form2,每个窗体上放置一个按钮Button1,在Form1上放置ListBox1控件

Form1的Button1的代码如下

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim c As Control

For Each c In Controls

If c.Name.Equals("ListBox1") Then

c.Parent = Form2

Form2.Show()

End If

Next

End Sub

Form2的Button1的代码如下

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim c As Control

For Each c In Controls

If c.Name.Equals("ListBox1") Then

c.Parent = Form1

Form1.Show()

End If

Next

End Sub

运行界面如下

点击Button1,ListBox1控件,会在两个窗体间移动


本文名称:vb点虐 多窗体编程 vb中多个窗体如何运行
URL标题:http://www.cdkjz.cn/article/ddsjhhs.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220