扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
Imports System.Threading
创新互联公司长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为民乐企业提供专业的网站制作、网站设计,民乐网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
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 打开窗体确实能行,不过窗体间相互操作不起作用,这个尚待研究中。
Dim BDS, JSS, I As Integer
Private Sub Command1_Click()
Dim kkl() As String '取出各行表达式的运算符的数值
ReDim kkl(UBound(BDS))
For I = 0 To UBound(BDS)
kkl(I) = Right(Left(BDS(I), 3), 1) '取出表达式的运算符
Select Case kkl(I)
Case "+"
JSS = Split(BDS(I), "+") '取出运算符二边的数据,存储在 JSS 数组中,下同
Text2.Text = Text2.Text Val(JSS(0)) + Val(JSS(1)) vbCrLf '在文本框2中显示计算结果。数据必须转换为数字数据!,下同
Case "-"
JSS = Split(BDS(I), "-")
Text2.Text = Text2.Text Val(JSS(0)) - Val(JSS(1)) vbCrLf
Case "*"
JSS = Split(BDS(I), "*")
Text2.Text = Text2.Text Val(JSS(0)) * Val(JSS(1)) vbCrLf
Case "/"
JSS = Split(BDS(I), "/")
Text2.Text = Text2.Text Val(JSS(0)) / Val(JSS(1)) vbCrLf
End Select
Next I
End Sub
Private Sub Form_Load()
Text1.Text = Text1.Text "33*33" vbCrLf
Text1.Text = Text1.Text "33+33" vbCrLf
Text1.Text = Text1.Text "33*33" vbCrLf
BDS = Split(Text1.Text, vbCrLf) '将数据存储到 BDS 数组中
End Sub
这个程序符合二位数与二位数的+、-、*、/ 的计算,比较简单。
ListBox操作需要用Invoke。另外多线程方式并不是并行处理。
建议采用.net framework 4 带的并行处理循环操作,若不是4.0版本的framework,可以使用Aforge的并行库比较方便。
用 timer 控件,按钮被按下的时候把 timer 的 .enabled 改为 true
timer 控件会发生 tick 事件,你可以让第一次 tick 执行 A,第二次 tick 执行 B,等等...
百度百科那里来的 ,我主要说vb.net不说vs哈。vs你也可以去百科那里看
Visual Basic 2010
2010——下一代开发平台
Visual Basic 2010 具有下列新增和加强的功能:
1、数组初始值设定项。
2、集合初始值设定项。
3、内联 Lambda 表达式。
4、自动实现属性。
5、泛化。
6、No-PIA 部署。
7、与 Python 的集成。
8、并行计算扩展。
Visual Basic 2012(RC)
Visual Basic 2012 RC 具有下列新增和加强的功能 :
1、异步功能
2、迭代器
3、调用层次结构
4、调用方信息
5、全局命名空间语句中的关键字
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流