正文
vb.net开发大全 vb net
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
开发一个VB.NET程序,要经过几个步骤
不好说,我就说下我的想法!有数据库的!
1:先想清楚,(包括先设想下页面,涉及的功能等)
2:编写文档
3:设计数据库,编写代码
4:
调试程序
,生成,查错
5:部署安装。
VB.NET分层开发的几点心得
从这一章开始 vb.net开发大全我们将通过一个系列vb.net开发大全的讲座来向诸位展现Visual Basic Net的独特魅力以及使用它开发应用程序的基本方法 Visual Basic Net是微软公司在 年推出的一种开发基于 Net平台应用程序的开发语言 也是微软公司极力推荐的一种开发 Net平台应用程序的开发语言 首先还是让我们来简单了解一下Visual Basic Net和其前一个版本 也是目前世界上拥有最多使用者的开发语言 Visual Basic 的主要区别 一 Visual Basic和Visual Basic Net的主要区别 虽然说Visual Basic Net是Visual Basic 的后继版本 但在我看来Visual Basic Net除了在语法上还保留Visual Basic原有的踪影以外 因为二者几乎在 %以上保持相似或相同 但在其vb.net开发大全他很多方面 Visual Basic Net都和Visual Basic截然不同 也许正是这些不同点 才使得Visual Basic Net功能更强大 更有生命力 但同样也为Visual Basic程序员转型为为Visual Basic Net程序员带来了困难 因为Visual Basic Net提出了很多新的功能 概念和观点 掌握Visual Basic Net不仅要掌握语法 还需要理解并运用这些新的功能 概念和观点 当然也需要掌握 Net框架 理解CLR(Common Language Runtime 通用语言进行时) 下面就从数据访问 Web开发和组件创建三个方面来简要谈谈二者的区别 数据访问 不同点主要表现在 数据访问技术 数据访问具体实现方法和数据绑定上的不同 在数据访问技术上 Visual Basic 是通过ADO(Active X Data Object 即 Active X数据对象)来实现对数据库访问的 同时为了保证对早期版本的兼容 也提供RDO(远程数据对象)和DAO(数据访问对象)二种数据访问技术 在Visual Basic Net中是使用ADO NET来访问数据库 ADO NET是 NET框架的一部分 其对应的类库是 Net FramWork SDK的真子集 ADO和ADO NET这两种技术在概念 功能和实现上都有许多差异 由于篇幅所限 这里就不一一介绍了 其实在Visual Basic Net中也可以使用ADO来访问数据库 但ADO在Visual Basic Net中是以组件的形式出现的 通过添加引用才可以在Visual Basic Net中使用 添加引用的过程 其实就是对组件互操作 经过互操作后的组件 已经并非先前意义上的组件 而是转变成可供Visual Basic Net直接使用的 Net类库 在数据访问的具体实现方法上 Visual Basic 实现数据访问主要是两种方法 其一是在程序设计阶段 可通过把数据源绑定到ADODC控件或使用数据环境 其二在运行时 可以通过编程方式创建记录集RecordSet对象并与记录集对象交换数据 同样在Visual Basic Net中实现数据访问的方法主要也是二种 其一是在程序设计阶段 通过创建 配置数据适配器DataAdapter和生成数据集DataSet 其二在运行中 通过编程方式动态创建 配置数据适配器和创建 生成数据集 在数据绑定(Data Bind)上 在Visual Basic 中实现数据绑定通过设置控件的下列属性来实现 DataChanged DataField DataFormat DataMember 和 DataSource 通常是把控件的显示属性绑定到数据源中的相应字段 在Visual Basic Net中 数据绑定的应用范围可广泛得多 Visual Basic Net中可以将任何控件的任何属性绑定到包含数据的任何结构中 Web开发 Visual Basic是使用Active Server Page(简称ASP)来创建在 Web应用程序 在ASP中 编写Web页面并非纯正的Visual Basic语言 而是Visual Basic脚本语言 VBScript 在Visual Basic Net中是使用ASP NET技术来编写Web页面 在ASP NET中使用的也不再是脚本语言 而是真正意义编程语言 其中就可以是Visual Basic Net 开发过ASP页面的朋友都清楚 虽然编写ASP页面对开发工具要求很低 但由于其是面向过程式开发 所以稍微复杂一点的ASP代码都显得杂乱无章 这都给程序设计 调试 修改带来了麻烦 而Visual Basic Net是建立在新的框架结构上 Visual Basic Net完全支持Web编程 凭借ASP NET的Web 应用程序 XML Web services等等基于Web上的功能 使得Visual Basic Net开发Web 页面与开发Windows编程很相似 Web页面代码也不显得有条有理了 组件创建 在使用Visual Basic 和Visual Basic Net编写应用程序时 虽然都可以通过从工具箱中选择组件 通过拖入方式在应用程序中加入组件 但二者在实现机理上却存在根本不同 在Visual Basic 中 应用程序中创建的组件全部是组件 即可在应用程序中使用的ActiveX控件 ActiveX 类型的DLL 和 ActiveX类型的EXE 而在Visual Basic Net中 向窗体中拖入的组件 都是基于继承 从 Net框架提供的SDK中相应的类继承 经过实例化后 通过添加功能才把组件加入到设计窗体中 这些过程都可以在Visual Basic Net的源代码中找到 Visual Basic Net中使用的每一个组件都是从Component或Control基类派生出来的 当然Visual Basic和Visual Basic Net之间还存在很多差别 如 Visual Basic 只提供单线程模式 并不支持多线程 而在Visual Basic Net全面支持多线程 并且在Visual Basic Net中还增加了结构化异常处理等新的功能 所以对于那些Visual Basic的程序员 从Visual Basic程序员转型到Visual Basic Net就有极强的必要性 下面就简要介绍一下这种必要性 二.从Visual Basic转型到Visual Basic Net的必然和必要性 虽然Visual Basic得到了很多人的认可 也有许多配套产品都提供了Visual Basic的接口 但随之时间的延续 其缺点也逐渐暴露了 有些甚至是无法 容忍 的 首先作为一种解释性的语言 不仅程序执行速度慢 并且在分发应用程序时 还需要带上解释库 其次Visual Basic并非完全的面向对象的开发语言 从根本上说 它应该是一种面向过程的开发语言 而Visual Basic Net做为下一代的Visual Basic语言 它是一种为开发 Net平台应用程序而度身定做的程序语言 因为Visual Basic Net中完全集成了 Net FrameWork( Net框架)和CLR(Common Language Runtime 即 公共语言运行时) 同时 Net 框架和公共语言运行时又共同提供Visual Basic Net语言互操作性 垃圾资源回收 可靠安全性和版本改进的支持 通过Visual Basic Net能够简便 快捷地创建 Net平台应用程序 XML Web services 和 ASP NET Web 应用程序 Visual Basic Net做为开发 Net平台的程序语言 那它就为开发现跨平台程序创造了可能 因为我们知道 微软推出 Net 其目的之一就是实现跨平台 虽然目前微软只提供了在Windows平台上运行的 Net框架 还无法实现真正意义上的跨平台 但随着MONO的出现(虽然它还存在很多问题 并且目前的MONO只为C#提供支持) 但可以预见的是在不久的将来 Visual Basic Net实现Write Once And Run AnyWhere的时间不会太久 Visual Basic Net是一种编译性的语言 但这种编译和以前接触的编译有所区别 因为经过Visual Basic Net编译器编译后得到文件并不是可以在计算机直接运行的二进制文件 它的性质是一种IL文件(中间语言文件) 在运行IL文件时 首先是通过CLR下的JIT(即时编译器) 把这种IL文件再编译成二进制文件 我们看到的程序运行 其实是经过JIT编译后的二进制文件在执行 这时可能有很多朋友会问 这种二次编译是否多此一举 具体实现中是否很麻烦 是否会影响程序的运行速度?二次编译的确是影响了程序运行的速度 但它却为实现跨平台带来了可能 其实这种编译过程犹如Java中的JVM(Java虚拟机) 正是JVM才使得Java能够开发出跨平台的应用程序 二次编译是CLR在 Net框架下自动实现IL文件到二进制文件转变的 它是一种自动完成的 并不需要人员的参与 所以它并不会给程序执行带来麻烦 Visual Basic Net 还是一种真正的面向对象的开发语言 可以说OOP思想已经深入到语言中的任一角落 如 在Visual Basic Net中创建的Windows组件 就是从类中继承 类经过实例化得到的 Visual Basic Net还增加了许多新功能和改进功能 如继承 接口和重载等 这些都使Visual Basic Net成为功能强大的面向对象的编程语言 微软公司在推出Visual Basic Net的同时 还推出了Visual Basic Net的开发工具Visual Studio Net Java程序员羡慕Visual Basic Net程序员的重要原因之一就是 Visual Basic Net拥有一个任何比目前Java程序员所使用的开发环境都好的集成开发环境 Visual Studio Net 三 Visual Basic Net开发利器Visual Studio Net简介 微软公司提供了四个不同的Visual Studio Net版本 分别是 企业级结构设计版 企业级开发版 专业版和学院版 其中学院版主要是为在校大学生学习Visual Studio Net准备的 它又分成三个独立的版本 Visual C#标准版 Visual Basic Net标准版和Visual C++标准版 上述的每一个版本的价格都不菲 现在在市面上买到主要是 张CD碟片的Visual Studio Net企业级结构设计版 (请注意 本文介绍的是Visual Studio Net Net FrameWork SDK 版本号是 )下面就以此版本讨论一下如何安装Visual Studio Net 安装 Visual Studio NET 版本的系统要求 每一个版本的Visual Studio Net有着不同的组件组合 这也就决定了对计算机有着不同的系统要求 建议您的计算机系统满足下列要求 操作系统 Windows XP 专业版 Windows XP Home Windows 服务器版 Windows 专业版 Windows Workstation Windows NT Server Windows Net Server版处理器 Pentium II 级 主频 MHz以上处理器 推荐使用Pentium II lishixinzhi/Article/program/net/201311/12194
同Java一样简单!VB.NET多线程开发实例
VB NET(Visual Basic NET)是为适应Microsoft NET框架的需要 对Visual Basic进行了重大改造后的开发工具 它比Visual Basic 功能更强大 更易于使用 其中最重要的变化就是对象继承 在VB NET中 所有可管理的类型都衍生自System Object 作为编程工具 最重要的一个特性就是垃圾碎片的回收 它由CLR(Common Language Runtime)进行控制 并提供更好的内存管理功能 通用的类型定义可以提供更好的互操作性和协同工作能力 因此 VB NET显得更强大 更具可靠性 在VB NET中 大多数CLR内建的类型都在System名字空间里已经定义了 比如 System Object System Int 和 System String 要注意的是 一个名字空间可能嵌在另一个名字空间内 象System Data里就有System Data DataSet的类 代表是CLR编程模型很重要的一个新概念 代表是一个特殊类型的可管理的类 当你创建一个代表的实例时 你必须提供一个带有匹配签名的方法执行的地址 一旦创建了一个代表的实例 调用方法将变的很容易 过去 我们利用VB开发多线程的应用程序时 是一件很令人痛苦的事 经常是多线程的程序运行是会变成多错误的程序!但在VB NET中 这种状况已经大为改观 现在 我们利用VB NET处理多线程和利用JAVA处理多线程一样简单了 下面我们就举个例子 来看看VB NET的多线程吧!下面是多线程程序threadtest vb的代码 imports Systemimports System Threadingpublic class AClasspublic sub Method ()Dim i as integerFor i = to Console Writeline( 这是类AClass方法method 的内容 i)nextend subpublic sub Method ()Dim i as integerFor i = to Console Writeline( 这是类AClass方法method 的内容 i)nextend subend classpublic class ThreadTestpublic shared sub Main()dim obj as new aclassdim th th as threadth =new Thread(new ThreadStart(addressof thod ))th startth =new Thread(new ThreadStart(addressof thod ))th startdim i as integerFor i= to Console WriteLine( Main方法里的内容 i)Nextend subend class现在 来让我们剖析一下上面的例子 我们创建了我们自己的类AClass 并创建了两个方法 Method 和Method 这两个方法很简单 只有一个For循环 向输出设备输出一些信息 我们还定义了另外一个类ThreadTest来使用上面创建的类AClass 在Main()方法中 我们创建了类Thread的实例 类Thread可以在System Threading名字空间里得到 它定义了处理线程的属性和方法 在类Thread的构造器中 我们使用了类ThreadStart 类ThreadStart是一个代表 标志着当一个线程开始时就开始执行定义的方法 为了执行定义的方法 我们实际调用的是线程的Start()方法 用VBC来编译上面的程序 vbc /out:threadtest exe threadtest vb 运行编译后的程序 我们将会看到我们定义的两个方法和main()方法的混合输出 这就说明每一个方法都在自己的线程下运行 除了上面的方法 线程还有下面常用的方法 Stop():停止线程的运行 Suspend() 暂停线程的运行 Resume() 继续线程的运行 Sleep() 停止线程一段时间(单位为毫秒) lishixinzhi/Article/program/net/201311/11287
VB.NET中的组件开发
简介 组件其实是一段可以重用的代码 通过遵循IComponent接口的标准来实现一个组件 所以有组件都是派生于Component类 由Component类来实现IComponent接口 在组件中应正确使用函数的访问级别来控制外部对其的访问限制 只要有足够的权限就可以将组件放到自己的程序中而不用担心组件会产生多大的错误 因为组件已经经过测试的 比如说可以把一段登录的程序做成一个组件 或者把经常使用到的一些功能也做成组件 这样就可以减少开发中的错误 也可以缩短开发时间 组件之间也可以互相套用 如一个组件引用另一个组件 都是没问题 但要先在Add Reference中添加对组件的引用 在 NET中是通过把组件放在程序集中来实现的 程序集中存放著这些组件所依赖的文件信息和所在路径 因此CLR就可以通过这些信息来确定组件所需要的其他程序集的位置 ( 另外在组件设计过程中应好好利用接口来设计组件) 在VS中创建组件 选建一个Project 再从模板中选Class Library OK 接着再从Project菜单中Add Component 到些为止 组件的一个框架就呈现在眼前 平台自动继承了Component类和构造函数 可以删除原先创建类库时自动生成的Class 看应用的需要 接着就可以在组件类里写要实现的功能 最后从Build(生成)菜单中选择Build Solution(生成解决方案)来生成组件 如果生成成功的话 到应用程序的BIN目录下会看到一个DLL文件 引用组件 只要在Solution Explorer窗口中 添加对DLL的Reference就可以了 Imports loginValidator Imports System Data Imports System Data SqlClient Public Class loginFormClass loginForm Inherits System Windows Forms Form #Region Windows 窗体设计器生成的代码 Public Sub New()Sub New() MyBase New() 该调用是 Windows 窗体设计器所必需的 InitializeComponent() 在 InitializeComponent() 调用之后添加任何初始化 End Sub 窗体重写 dispose 以清理组件列表 Protected Overloads Overrides Sub Dispose()Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (ponents Is Nothing) Then ponents Dispose() End If End If MyBase Dispose(disposing) End Sub Windows 窗体设计器所必需的 Private ponents As System ComponentModel IContainer 注意: 以下过程是 Windows 窗体设计器所必需的 可以使用 Windows 窗体设计器修改此过程 不要使用代码编辑器修改它 Friend WithEvents lblUserPwd As System Windows Forms Label Friend WithEvents lblUserName As System Windows Forms Label Friend WithEvents txtUserName As System Windows Forms TextBox Friend WithEvents txtUserPwd As System Windows Forms TextBox Friend WithEvents btnSubmit As System Windows Forms Button Friend WithEvents btnExit As System Windows Forms Button Friend WithEvents Label As System Windows Forms Label Friend WithEvents Label As System Windows Forms Label Friend WithEvents btnCancel As System Windows Forms Button Friend WithEvents Label As System Windows Forms Label System Diagnostics DebuggerStepThrough() Private Sub InitializeComponent()Sub InitializeComponent() Dim resources As System Resources ResourceManager = New System Resources ResourceManager(GetType(loginForm)) Me lblUserPwd = New System Windows Forms Label Me lblUserName = New System Windows Forms Label Me txtUserName = New System Windows Forms TextBox Me txtUserPwd = New System Windows Forms TextBox Me btnSubmit = New System Windows Forms Button Me btnExit = New System Windows Forms Button Me Label = New System Windows Forms Label Me Label = New System Windows Forms Label Me btnCancel = New System Windows Forms Button Me Label = New System Windows Forms Label Me SuspendLayout() lblUserPwd Me lblUserPwd Location = New System Drawing Point( ) Me lblUserPwd Name = lblUserPwd Me lblUserPwd Size = New System Drawing Size( ) Me lblUserPwd TabIndex = Me lblUserPwd Text = 密码 Me lblUserPwd TextAlign = System Drawing ContentAlignment MiddleCenter lblUserName Me lblUserName Location = New System Drawing Point( ) Me lblUserName Name = lblUserName Me lblUserName Size = New System Drawing Size( ) Me lblUserName TabIndex = Me lblUserName Text = 帐号 Me lblUserName TextAlign = System Drawing ContentAlignment MiddleCenter txtUserName Me txtUserName BackColor = System Drawing SystemColors Info Me txtUserName BorderStyle = System Windows Forms BorderStyle FixedSingle Me txtUserName Location = New System Drawing Point( ) Me txtUserName Name = txtUserName Me txtUserName Size = New System Drawing Size( ) Me txtUserName TabIndex = Me txtUserName Text = txtUserPwd Me txtUserPwd BackColor = System Drawing SystemColors Info Me txtUserPwd BorderStyle = System Windows Forms BorderStyle FixedSingle Me txtUserPwd Location = New System Drawing Point( ) Me txtUserPwd Name = txtUserPwd Me txtUserPwd PasswordChar = Microsoft VisualBasic ChrW( ) Me txtUserPwd Size = New System Drawing Size( ) Me txtUserPwd TabIndex = Me txtUserPwd Text = btnSubmit Me btnSubmit BackColor = System Drawing SystemColors ActiveBorder Me btnSubmit Cursor = System Windows Forms Cursors Hand Me btnSubmit ForeColor = System Drawing SystemColors InfoText Me btnSubmit Location = New System Drawing Point( ) Me btnSubmit Name = btnSubmit Me btnSubmit TabIndex = Me btnSubmit Text = 登录 btnExit Me btnExit BackColor = System Drawing SystemColors ActiveBorder Me btnExit Cursor = System Windows Forms Cursors Hand Me btnExit Location = New System Drawing Point( ) Me btnExit Name = btnExit Me btnExit TabIndex = Me btnExit Text = 退出 Label Me Label Font = New System Drawing Font( Impact ! System Drawing FontStyle Regular System Drawing GraphicsUnit Point CType( Byte)) Me Label Location = New System Drawing Point( ) Me Label Name = Label Me Label Size = New System Drawing Size( ) Me Label TabIndex = Me Label Text = TEST Label Me Label BackColor = System Drawing SystemColors ControlText Me Label ForeColor = System Drawing SystemColors HighlightText Me Label Location = New System Drawing Point( ) Me Label Name = Label Me Label Size = New System Drawing Size( ) Me Label TabIndex = Me Label Text = 系统登录 Me Label TextAlign = System Drawing ContentAlignment MiddleCenter btnCancel Me btnCancel BackColor = System Drawing SystemColors ActiveBorder Me btnCancel Cursor = System Windows Forms Cursors Hand Me btnCancel Location = New System Drawing Point( ) Me btnCancel Name = btnCancel Me btnCancel TabIndex = Me btnCancel Text = 取消 Label Me Label ForeColor = System Drawing Color Red Me Label Location = New System Drawing Point( ) Me Label Name = Label Me Label Size = New System Drawing Size( ) Me Label TabIndex = Me Label Text = 为保证系统安全 请先登录 loginForm Me AutoScaleBaseSize = New System Drawing Size( ) Me BackColor = System Drawing SystemColors ActiveBorder Me ClientSize = New System Drawing Size( ) Me Controls Add(Me Label ) Me Controls Add(Me btnCancel) Me Controls Add(Me Label ) Me Controls Add(Me Label ) Me Controls Add(Me btnExit) Me Controls Add(Me txtUserPwd) Me Controls Add(Me txtUserName) Me Controls Add(Me btnSubmit) Me Controls Add(Me lblUserName) Me Controls Add(Me lblUserPwd) Me FormBorderStyle = System Windows Forms FormBorderStyle None Me Icon = CType(resources GetObject( $this Icon ) System Drawing Icon) Me MaximizeBox = False Me MinimizeBox = False Me Name = loginForm Me SizeGripStyle = System Windows Forms SizeGripStyle Hide Me StartPosition = System Windows Forms FormStartPosition CenterScreen Me Tag = 登录 Me Text = TEST 系统登录 Me ResumeLayout(False) End Sub #End Region Private Sub loginForm_Load()Sub loginForm_Load(ByVal sender As System Object ByVal e As System EventArgs) Handles MyBase Load txtUserName Focus() btnCancel Visible = False End Sub Private Sub btnExit_Click()Sub btnExit_Click(ByVal sender As System Object ByVal e As System EventArgs) Handles btnExit Click Application Exit() End Sub Private Sub btnSubmit_Click()Sub btnSubmit_Click(ByVal sender As System Object ByVal e As System EventArgs) Handles btnSubmit Click 调用loginValidator组件 Dim validator As New Validator validator vUsername = txtUserName Text Trim validator vUserpwd = txtUserPwd Text Trim If (validator validate() = True) Then Me Close() Else MessageBox Show( 帐号或密码错误 请重试! 验证错误 MessageBoxButtons OK MessageBoxIcon Warning) End If End Sub Private Sub btnCancel_Click()Sub btnCancel_Click(ByVal sender As System Object ByVal e As System EventArgs) Me Dispose() End Sub Private Sub btnCancel_Click_ ()Sub btnCancel_Click_ (ByVal sender As System Object ByVal e As System EventArgs) Handles btnCancel Click Me Close() End Sub End Class 关于在 NET中使用组件 NET可以向后兼容 并支持了和ActiveX对象等早期版本的应用程序 在 NET中使用等很有趣 NET创建一个包将它们包装起来 而它们之间的交互就是通过这个包装来进行的 这个包就叫做运行时可呼叫包装(RCW) 可以直接使用 也可以先转换成 NET程序集后再使用 直接使用组件是通过Add Reference来实现的 这种方法通过RCW来包装 缺点 无法放到 GAC中 不能重用 通过转换成 NET程序集来使用 是通过利用 tlbimp 命令行工具来实现的 语法 tlbimp Name dll /out:Comp dll /namespace:myNS /a *** Version: myVersion /reference:refname 第一个为的名称 第二个为要生成的 NET组件名称 第三个为要生成的名称空间 第四个为 版本号 第四个指定引用的文件名 lishixinzhi/Article/program/net/201311/12392
关于vb.net开发大全和vb net的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。