成都创新互联网站制作重庆分公司

vb.net跨线程调用 跨线程调用函数

VB.NET 在线程里用textbox,提示 线程间操作无效: 从不是创建控件“TextBox2”的线程访问它

比如在一个窗体中的代码如下,在另一个线程中显示,隐藏窗口线程中的进度条:

目前创新互联已为1000+的企业提供了网站建设、域名、网页空间、网站托管维护、企业网站设计、阿拉善盟网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

Public Delegate Sub VoidDelegate() '定义委托类型

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

Dim th1 As New System.Threading.Thread(AddressOf MyThreadProc) '声明线程

th1.Start() '启动线程运行 MyThreadProc过程

End Sub

Public Sub MyThreadProc() 

Me.Invoke(New VoidDelegate(AddressOf StartProgress)) '这个是在另一个线程里调用StartProgress过程,并在创建窗口的那个线程里运行。参数是委托类型。me也可以改成控件名。如果直接调用 StartProgress,那该过程就在与MyThreadProc同一线程中运行,那么StartProgress过程中修改的控件不是在本线程创建的,就会出错。

'。。。。。。。。。

Me.Invoke(New VoidDelegate(AddressOf ShutProgress))

End Sub

Public Sub ShutProgress()

ProgressBar1.Visible = False

End Sub

Public Sub StartProgress()

ProgressBar1.Visible = True

End Sub

'不是还有个Process控件吗,好像也是用来多线程操作的,还没研究,

请问大虾们

电脑编程的行吗?

FreeBasic

可以编写WINDONS程序。

这个软件是免费的,而且很小,大概十几分钟就下来了。

BASIC学好后,可以看VB,但我不知道是否能在这个软件运行。

学完BASIC,你的程序基础就差不多了。这个时候有四条路在你面前:

VB,C,JAVA,PASCAL。

其中,VB最简单,但可能工作不是那么好找,其它三种可以,其中C,JAVA应该是最流行的。

就我的精练,PASCAL比较简单,JAVA迟滞,最难是C。

下面我分别讲讲。

首先,PASCAL:

程序设计方法与PASCAL语言

本书是作者多年教学的总结,通过分析、加工、提炼而成。针对程序设计语言的特点,针对人的思维特点,以面向程序设计为中心,以程序设计方法为主线来介绍PASCAL语言的基于结构化程序设计思想的教科书。作者力求使读者通过学习本书不仅掌握PASCAL语言,更主要的是使读 ...

你可以在

FreePascal

下载免费的编译器。

然后,VB:

VB语言程序设计

本书以VISUAL BASIC 6.0为语言背景,以程序结构为主线,介绍可视化程序设计的基本知识和编程方法。内容包括:面向对象的初步概念,程序设计基础,数据输入/输出,选择结构设计,循环结构设计,数组,过程,数据文件,常用控件的使用,程序调试等。 ...

C语言

C程序设计(第二版)

C语言是国内外广泛使用的计算机语言,是计算机应用人员应掌握的一种程序设计工具。本书第一版于1991年出版,全书针对初学者的特点,精心策划、准确定位、概念清晰、例题丰富、深入浅出,受到专家和读者的一致好评。普遍认为它是学习C语言的好教材,被全国大多数高校 ...

C语言参考手册

语言参考手册的最新版,在强调正确性、可移植性和可维护性的基础上,对C语言的具体细节、运行库以及C语言编程风格做了完整、准确的描述。本书涵盖了传统C语言、C89、C95、C99等所有C语言版本的实现,同时讨论了C++与C语言兼容的部分。全书自上而下介绍了C语言的词法结构、预处理器、声明、类型表达式、语句、函数和运? ...

C++沉思录 C++沉思录

编程技术,不仅告诉你如何编程,还告诉你为什么要这样编程。本书曾出现在众多的C++专家推荐书目中。 这将是C++程序员的必读之作。因为:它包含了丰富的C++思想和技术,从详细的代码实例总结出程序设计的原则和方法。 不仅教你如何遵循规则,还教你如何思考C++编程。既包括面向对象编程也包括泛型编程。 探究STL这一近 ..

泛型编程与STL

编程与STL》阐述了泛型编程的中心思想:concepts、modeling、refinement,并为你展示这些思想如何导出STL的基础概念:iterators、containers、function objects。循此路线,你可以把STL想像为一个由来的完整优势……

C++编程思想第2卷:实用编程技术

编程技术和最佳的实践方法,深入探究了异常处理方法和异常安全设计;介绍C++的字符串、输入输出流、STL算法、容器和模板的现代用法,包括模板元编程;解释多重继承问题的难点,展示RTTI的实际使用,描述了典型的设计模式及其实现,特别介绍被认为是标准C++下一版特征之一的多线程处理编程技术,并提供了最新的研究成果? ...

C语言的编译器,可以使用VC.NET,BC++这些商业软件。也可以使用一些免费的软件。

DEV-C++

这个编译器很好,我读书时一直使用。功能不是很强大,但插件很多。

code::blocks

最近发现的,和DEV-CPP差不多,但功能比前者全面。

OpenWatcom

老牌的编译器,很多游戏都是它写的。

以上这些软件同样可以编译C++。

C学好后可以学C++,我学C用了可能两年多时间。

JAVA语言:

应该说JAVA是最有前途的语言,我建议你学这个,又好找工作。

Java程序设计基础

本书主要针对初学Java的读者,主要介绍了面向对象程序代码的基本概念:创建图形用户接口所要事的可视化对象:基于事件的编程等内容。本书的主要目标是:在合理的编程规则下以一种能够被初级程序员接受的方式介绍上述内容,以期提供给读者工具、技术以及创建并保持程序的 ...

Java编程思想(原书第3版)

从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。本书作者有多年的教学经验,对C、C++、Java语言都有独到、深入的理解。因此他非常了解如何教授Java语言这门课程,也非常明白语言教学中的难点及人们的困惑。作者以通俗易懂及小而直接?...

刚开始学,要选择合适的工具,象NETBEANS,ECLIPSE这些东东都是专业级的,最好使用JCREATOR。这个软件小巧到功能强大。

JCREATOR

其次就是网页制作,这是每个程序员不得不做的事情。

如果你学的是VB。可以学ASP:

ASP程序设计

本书对ASP动态网站编程作了系统的介绍,全书分成四大部分。第一部分为环境配置与ASP编程基础,介绍ASP+SQL Server平台的配置,以及HTML、CSS和VBScript语言的使用。第二部分为ASP数据库程序设计,介绍了ASP操作Access和SQL Server数据库的三大基本格式,以及如何读?...

ASP.NET 2.0高级编程

ASP.NET 2.0技术内幕》的姐妹篇,侧重于延伸和拓宽ASP.NET 2.0的高级主题,进一步帮助读者掌握并深入ASP .NET 2.0的精髓,为将来成功地构建复杂精巧的、功能性更强的Web应用程序奠定基矗全书共三部分:ASP.NET内部机理、特有特性和ASP.NET控件。本书适合从事Web开发的程序员阅读,旨在帮助他们提升ASP.NET开发技能。 ...

ASP.NET 2.0 高级编程(第4版) ASP.NET 2.0 高级编程(第4版)

ASP.NET各种编程技能的同时重点介绍了ASP.NET 2 O版本中的巨大变化,详细阐述了ASP NET 2.0中所包含的每个新特性。书中提供了大量的实例,.可帮助读者快速掌握如何在N ET Framework下构建功能强大的ASP.NET应用程序。本书适用于有一些 ASP NET基础知识的学习者以及;隹备迁移到ASP NET 2 0的编程老手。

Programming ASP.NET 中文版(第3版)

ASP.NET;HTML编程基础;比较ASP和ASP.NET;ASP.NET中的事件;比较HTML控件和ASP控件;基本的ASP控件 API;代码隐藏窗体;使用Visual Studio .NET集成开发环境;跟踪,调试和错误处理;ASP.NET中的验证控件;数据绑定技术基础;列表控件和DataGrid控件;ADO.NET指南;调用存储过程;更新数据库记录;Repeater和DataList? ...

要建立网站,你就不得不搭建服务器,IIS你肯定是用不上了,可以使用Apache的服务器,它提供ASP的,JSP和PHP的服务器

相对来说都很小,可你要选择性的下载,安装的时候看看相关的文章。

然后就是数据库,

使用MYSQL吧,前期版本都很小。在网吧中主要就是练习。

学C的话,可以学PHP。

PHP程序设计与实例分析教程

本书为“全面突破网络编程技术丛书”之一。本书介绍的PHP语言是一种服务器端解释的脚本语言,它根据用户请求或服务器端的数据产生动态网页。全书系统地介绍了PHP在多种平台环境中的设计方法,重点讲解了其强大的内建访问数据库的能力,以及它如何能够作为Apache Web服务 ...

PHP高级编程

PHP的基本知识与高级特性,指导读者从入门到精通掌握PHP技术。内容包括PHP的变量、函数、语句、表达式,PHP对文件的处理,PHP的模块,如MySQL、XML、LDAP、GD,用PHP发送电子邮件,PHP的安全特性等。本书还介绍了五个范例应用程序,结合实际应用程序来讲述编写 PHP代码的特点。本书的附录还介绍了关于PHP的问题解答、技? ...

PHP与MySQL5程序设计(第2版)

PHP脚本语言和MySQL数据库这两种目前最流行的开源软件,主要内容包括PHP和MySQL基本概念、PHP扩展与应用库、日期和时间功能、 PHP数据对象扩展、PHP的mysqli扩展、MySQL 5的存储例程、触发器和视图等。本书实用性强,帮助读者学习PHP编程语言和MySQL数据库服务器的最佳实践,了解如何结合这些卓越的技术创建数据库驱动的 ...

服务器和上面一样。

学JAVA,就学JSP。

JSP程序设计教程

本书以JSP为开发工具,以java为开发语言,用通俗、简明的语言由浅入深出地讲解了JSP程序设计的开发方法,同时辅以大量的实例,书中所有实例程序代码均在开发环境中调试通过。同时,每一章后面都附有相应的练习题帮助读者对本章所学知识进一步理解和掌握。本书内容 ...

JSP程序设计

JSP(JavaServer Pages)是目前热门的跨平台动态Web应用开发技术。本书由经验丰富的开发人员撰写,是一本通俗易懂的JSP入门书籍。书中主要介绍JSP基础知识、 JSP和表达式语言(EL)、JSP标记库和JSTL、JSP指令、JSP和JavaBean、错误处理、JSP和servlet、访问数据库以 ...

现在在J2EE方面,已经流行框架了,就我自己使用来看,框架的确能大大的减少工作量。

实战Struts

Struts解决了许多Web应用程序开发中的常见问题。基于Struts应用程序框架构造的应用程序,除了可以复用业已证明可用的解决方案外,同时也可以使得开发人员更加关注应用程序的特性。Struts是由Apache软件基金会支持的开源软件。本书完整介绍了Struts框架结构,涵盖了设计、数据校验、数据库访问、动态页面生成、本地化、Str ...

WebWork in Action中文版

本书是一本从头至尾都使用现实世界例子讲述有关编写Web应用程序的书籍。WebWork所强调的内容是:利用框架实现你的项目,而不是被框架所阻碍。在本书中,我们将从简单的表单及表单处理开始,逐一讲述编写Web应用程序的基础知识:action、interceptor和result,以及控制反转(IoC)模式、对象图导航语言(OGNL)和所有来自Web ...

JSF实战

JSF是Sun公司J2EE标准指定的Web应用框架,得到了众多厂商的支持。本书是JSF方面的名著,共分五个部分。第一部分是JSF基础知识;第二部分是构建UI;第三部分研究将原型转化为实际应用所需的应用代码;第四部分从组件开发的角度来研究JSF;第五部分基于第四部分所讲述的知识给出了大量示例。本书作者是JSF界的权威,在书中提? ...

Spring in Action 中文版

本书分为三大部分和两个附录,每一部分专注于Spring框架的一个领域:核心层、中间层和Web层。第一部分展示了Spring框架的两个核心概念:反向控制(Inverstion of Control,IoC)和面向切面编程(Aspect-Oriented Programming,AOP),以便读者理解Spring的基础原理,这些基础原理在本书各个章节都会用到。第二部分在第1章介 ...

Hibernate实战(第2版·英文版)

本书全面讲述了Hibernate和Java Persistence,并对两者进行了详细的对比分析。书中通过一个应用将数百个例子融合起来,不仅深入剖析了Hibernate 3.2和Java Persistence 丰富的编程模型,还深刻阐述了数据库设计、对象/关系映射(ORM)和优化等方面的基本原则、策略和最佳实践。书中处处闪烁着作者超凡的真知灼见,将大大 ? ...

掌握AJAX也是很必要的。

基于J2EE的Ajax宝典(含光盘1张)

本书主要介绍Ajax开发中的环境与框架特点,着重介绍了Ajax的难点和重点。对于开发Ajax的常用工具也进行了详细讲解。全书分3个部分,内容涵盖 Ajax基本概念、Ajax和新技术和Ajax核心应用。书中通过Ajax与Struts及Ajax与Web Services的配合通过实际案例介绍Ajax的高级应用。本书适合Java程序员;企业级项目的开发人员参考使用 ...

Ajax与PHPWeb开发

本书指导读者使用Ajax、PHP及其他相关技术建立快速响应的网页。本书不仅从Ajax的客户端和服务器端技术两个方面指导读者逐步掌握 Ajax基础应用,还通过实例详细演示了Ajax表单验证、Ajax聊天室、Ajax Suggest、使用SVG实现的Ajax实时绘图程序、Ajax Grid、Ajax RSS阅读器和Ajax拖放等的实现过程。同时还介绍了在Windows和UNIX ...

征服ASP.NET 2.0 Ajax——Web开发技术详解

本书介绍了最新的ASP.NET Ajax技术。全书共分为8篇,包括Ajax的基本知识、CSS样式表、JavaScript、XMLHTTP请求和DOM对象、Ajax组件、 ASP.NET Ajax类库等内容。其中重点介绍的是ASP.NET 2.0 Ajax框架的各种使用方法,由浅入深地讲解了Ajax在实际项目中的应用。其中涉及了上百个Ajax的典型应用,具有很高的参考价值。 ? ...

Ajax实战

服务器和上一样。

最后就是编程利器了,在JAVA方面,除了上面介绍的之外,还有

NETBEANS

eclipse

值得注意的是,ECLIPSE非常好用,集成了上述的很多框架,非常方便。

最后是学习的方向,写什么,我的写法是游戏,我写过很多的小游戏,这样程序就越写越好了。

最后是相关网站:

参考资料:

请教VB.net中怎么跨线程调用控件

建立委托。 Me.Invoke——同步委托 或者 Me.BeginInvoke——异步委托 例:Me.Invoke(Sub Textbox.Text="这是一个示例" End Sub)

VB能做些什么?

VB可以做数据库前台开发,也可做后台,还可以做很多应用软件。

一般开发游戏很少用到VB。游戏编程指利用计算机编程语言,如C编程语言、C++、java等,编写计算机、手机或游戏机上的游戏。

目前流行的游戏编程语言为C++编程语言,游戏编程接口为DirectX9.0、OpenGL和SDL(Simple DirectMedia Layer)等。

现在手机上玩的游戏分为Android与IOS两种平台,分别是用java和object-c(或swift)。当然时下也流行一些跨平台的编程引擎,例如cocos2d-x、unity 3D等。

Visual Basic源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序  。

在 Visual Basic.NET程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗(Form),命令按钮(Command),菜单(Menu)等对象。

扩展资料:

VB的编程一般用的是VB6.0。

VB6.0全称为VisualBasic 6.0,是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。如果你是一个对编程一无所知,而又迫切希望掌握一种快捷实用的编程语言的初学者,那选择VB 6.0没错的。

即使考虑到VB程序本身编译和运行效率较低的不足(嘻嘻速度现在不是问题吧),单是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,它仍不失一款优秀的编程工具,是初学者的首选。

用VB开发应用程序,包括两部分工作:一是设计图形用户界面;二是编写程序代码。设计图形用户界面通过窗体设计器来完成;而代码编辑器的作用就是用来编写应用程序代码。

参考资料:

百度百科-Visual Basic

百度百科-游戏编程

大神你们好,请帮我看一下这段vb.net的 Invoke代码是什么意思...

其实这行代码和C_RunCompleted(image, Nothing)的效果类似,但在BackgroundWorker中解决了“线程安全”的问题。

你可以把多线程看成几个工人同时干活。如果大家都共用一份材料,然后我给它补一块,你给它割一块,他再把其它材料焊上去,岂不是乱套了?Invoke的作用就是用一个线程模型调用方法,让主线程先放一边,这样就不会乱套了,也就是“线程安全”。你试试直接改成上面的代码,运行时会引发跨线程异常

vb.net backgroundworker 报告进度的方法

跨线程调用窗体控件无效,请在Load中加入如下代码:

CheckForIllegalCrossThreadCalls = False


当前文章:vb.net跨线程调用 跨线程调用函数
网页网址:http://cxhlcq.com/article/hjpdog.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部