重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
VB6.0是基于对象的,VB.NET是面向对象的,它们之间的语法上差距还是比较大的.
创新互联建站专注于企业全网整合营销推广、网站重做改版、铜川网站定制设计、自适应品牌网站建设、H5响应式网站、商城网站制作、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为铜川等各大城市提供网站开发制作服务。
VB.NET生成的是托管代码,必须运行于.NET框架之上.VB6则依赖于VB6运行时的支持.
在WINDOWS的下一版本WINDOWS 7中仍然会提供VB6的支持,不过再到以后的版本就没了.
如果你是第一次学,个人觉得还是直接转向VB.NET学习好了.
Me.Invoke(d, i)
问题出在这里!
直接用Me.Invoke把实际的执行任务提交给主线程运行
所以你的处理函数实际上是在主线程中运行的,新线程等于没用
正确的作法是,定义一个函数为入口的线程,并启动它
在需要调用的时候再使用Invoke来调用委托来进行更改。
----------------------------------------------------------------
方法已经给你说明白了,新建1个线程和2个线程来操作有什么不通用的哪??
问题不是线程个数的问题,是你线程中的函数一直在调用settext和settext1两个函数,而这两个函数都是处于method 方法 的while的循环中,相当于不间歇的在使用 Me.Invoke(d, i)这个方法。
----------------------------------------------------------------
如果你要不停地通过另外一个线程修改richtextbox内的内容,那也可以新启动一个线程,由这个线程的入口方法创建一个richtextbox ,再由这个线程来对这个richtextbox 进行操作。当然,你也可以用不安全的线程间的操作方法来实现。
通过下面的方法进行修改:
TextBox1.Font = New Font("Arial", 16, FontStyle.Bold) 'Arial字体,大小:16,粗体
'TextBox1.Font = New Font("Arial", 16, FontStyle.Italic) 'Arial字体,大小:16,斜体
'TextBox1.Font = New Font("Arial", 16, FontStyle.Regular) 'Arial字体,大小:16,正常
'TextBox1.Font = New Font("Arial", 16, FontStyle.Strikeout) 'Arial字体,大小:16,删除线
'TextBox1.Font = New Font("Arial", 16, FontStyle.Underline) 'Arial字体,大小:16,下划线
TextBox1.ForeColor = Color.Red '前景色
VB.NET的简介
VB.net是微软最新平台技术,是.netframeworkSDK的一种语言。VB.net和VC#.net在功能上没有区别。编译以后生成的可执行文件被称为Assembly,即程序集。
VB.net的版本号是VisualBasic7.0,它的运行是建立在CLR(CommonLanguageRuntime)和MSIL(MicrosoftIntermediateLanguage)虚拟器上的。其实,它的机制和Java差不多。
VB.NET的特点
1.真正成为面向对象以及支持继承性的语言。
2.窗体设计器支持可视化继承,并且包含了许多新的特性,比如自动改变窗体大小、资源本地化支持、数据类工具内在支持XML数据。
3.直接建立在.NET的框架结构上,因此开发人员可以充分利用所有.NET平台特性,也可以与其他的.NET语言交互。
4.为Windows应用程序提供了XCOPY部署,开发者不再需要为DLL的版本问题担忧。
VB.net的语言特点:
1.代码托管。被托管的代码享受.netframework提供的安全保障和垃圾回收机制,但是这也同时表明,你的程序被框在Framework里面了。API变得不太方便。
2.强大的面向对象特性。现在VB7已经是一个完全的面向对象程序。
现在VB7已经支持类的各种特性:继承,函数的覆盖,重载,虚拟,隐藏??
3.功能强大,程序界面更标准。
4.程序代码结构化更强,开发环境舒适体贴。