VB_Net自学经典PPT教程(完整版)_第1页
VB_Net自学经典PPT教程(完整版)_第2页
VB_Net自学经典PPT教程(完整版)_第3页
VB_Net自学经典PPT教程(完整版)_第4页
VB_Net自学经典PPT教程(完整版)_第5页
已阅读5页,还剩608页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 vb.net基础 第二章 简单的vb.net 第三章 vb.net语言基础 第四章 基本的控制结构 第五章 数 组 第六章 过 程 第七章 用户界面设计 第八章 面向对象程序设计基础 第九章 文 件 第十章 图形应用程序开发 第十一章 数据库应用程序开发,目 录,第一章 vb.net基础,1.1 vb.net概述 1.2 vb.net集成开发环境 1.3 使用帮助系统,本章目录,1.1 vb.net概述,1.1.1 visual basic的发展 20世纪60年出现basic语言; 20世纪80年代,true basic、quick basic和turbo basic等; 1991年m

2、icrosoft公司推出visual basic1.0,以可视化工具为界面设计、结构化basic语言为基础,以事件驱动为运行机制。从1991年的vb1.0至1998年的v b6.0的多次版本升级,功能更强大、完善,应用面更广; 2002年正式发布visual basic.net,本章目录,1.1.2 microsoft.net概述,什么是.net? . net代表了一个集合、一个环境、一个编程的基本结构,作为一个平台来支持下一代的internet。 .net也是一个用户环境,是一组基本的用户服务,可以作用于客户端、服务器或任何地方 。 对初学vb的人来说,可以这样认为,.net就是visual

3、 studio.net,本章目录,visual studio.net,本章目录,1.1.3 vb.net特点,1 引例 例1.1简单的动画演示。 一行文字“欢迎使用vb.net”在具有背景图案的窗体中上、下移动。 移动方法有两种:单击手动按钮,移动5个像素单位 ;单击自动按钮,按定时器触发频率连续移动;当内容超出窗体范围时,进行反弹,本章目录,引例,根据要求,用工具箱上的label、button、timer等控件,在窗体上建立控件对象,进行有关的属性设置,本章目录,引例:编写事件过程,本章目录,提供了易学易用的应用程序集成开发环境 具有面向对象的可视化设计工具 事件驱动的编程机制 支持结构化程

4、序设计,具有面向对象程序设计语言的所有特征 具有丰富的数据类型、功能强大的类库 强大的数据库功能 网络功能 完备的帮助功能,vb.net功能特点,本章目录,1.2 vb.net的集成开发环境,1.2.1进入vb.net,启动visual studio.net “起始页”选择“新建项目/打开项目”按钮,visual basic项目,windows应用程序,本章目录,vb.net集成开发环境,本章目录,1.2.2主窗口,三种工作模式 设计模式 界面的设计和代码的编制 运行模式 运行应用程序 中断模式 暂时中断程序运行,调试程序 2. 菜单栏 包括11个下拉菜单 3. 工具栏,本章目录,1.2.3

5、窗体设计/代码设计窗口,1.窗体设计器窗口 建立vb.net应用程序的界面(一个应用程序可以有多个窗体,通过“项目|添加windows窗体”命令增加新窗体)。 2.代码设计窗口 专门用来进行代码设计,包括各种事件过程、过程和类等源程序代码的编写和修改。 打开代码设计窗口的方法:双击窗体、控件或单击代码窗口上方的选项卡组对应项,本章目录,1.2.4 属性窗口,窗体和控件称为对象,每个对象用一组属性来描述其外部特征,如颜色、大小等。 属性窗口用于显示和设置所选定的对象的属性。 属性窗口由四部分组成: 对象和名称空间列表框 属性显示排列方式 属性列表框 属性含义说明,本章目录,1.2.5 解决方案资

6、源管理器窗口,项目 一个独立的编程单位(包含窗体文件及其他一些相关文件),若干项目组成一个解决方案 解决方案可以含有以下类型的文件: 解决方案文件(.sln) 可包括用不同语言开发的项目 项目文件(.vbproj) 由引用的组件和代码模块组成 代码模块文件(.vb) 包括窗体文件、类模块或其他代码文件,本章目录,1.3 使用帮助系统,动态帮助 属性窗口“动态帮助”标签卡内 索引 使用上下文相关的帮助 按“f1”键 网络资源 通过http:/,本章目录,本章小节,visual studio.net 一个支持下一代internet的平台 vb.net的三种工作模式 设计模式、运行模式、中断模式 组

7、成,本章目录,解决方案,项目,组件和代码模块,项目,组件和代码模块,思考题,1. 什么是.net框架? 2. 简述vb.net的特点 3. vb.net有多种类型的窗口,若想在设计时看到代码窗口,怎样操作? 4. 如何使各窗口显示或不显示? 5. 如果窗口布局搞乱了,如何恢复默认布局? 6. 解决方案与项目的区别,本章目录,第二章 简单的vb.net程序设计,2.1 vb.net对象的概念 2.2 建立简单的应用程序 2.3 窗体和基本控件 2.4 综合应用,本章目录,2.1 visual basic对象的概念,2.1.1 对象和类 1.对象 对象就是日常生活中的某个实在的物体 例如,一个人、

8、一辆汽车、一台电脑。 对象都具有各自的特征(属性)、行为(方法) 。 人有身高、体重、听力等特征;也具有起立、行走、说话、踢足球等行为。 在vb.net中,将反映对象的属性和行为封装在一起,是面向对象编程的基本元素,本章目录,2.类的概念,类 同种对象的集合与抽象,是创建对象实例的模板,包含所创建对象的属性描述和行为特征的定义。 例如,人类是具体人的抽象。每个人有不同的身高、体重等属性值和不同的行为。 vb.net工具箱中的可视图标是vb.net系统设计好的标准控件类。通过将控件类实例化,得到真正的控件对象。在窗体上画一个控件,就将类转换为对象,创建了一个控件对象(简称控件,本章目录,例如:工

9、具箱内的textbox是类(它确定了textbox的属性、方法和事件) 窗体上显示的是两个text对象,本章目录,属性、事件和方法构成对象的三要素 1. 属性 存放对象的数据(决定对象外观及功能) 例如,控件名称、文本、大小等属性。 对象属性的设置方法: 设计阶段 利用属性窗口直接设置属性值 程序运行时 通过语句对象名.属性名=属性值 例如:button1.text = 确定 注意:若属性只能在设计阶段设置,在程序运行阶段不可改变,称为只读属性,2.1.2 对象的属性、事件和方法,本章目录,事件 发生在对象上的事情 同一事件,对不同的对象,会引发不同的反应,事件,本章目录,教师_铃声() 讲课

10、 end sub,学生_铃声() 听讲 接受知识 end sub,vb.net为对象预先定义了一系列的事件。例如,单击click、获取焦点gotfocus 、按下键盘keypress 等,其他人员_铃声() 可不于响应 end sub,事件过程 应用程序处理事件的步骤 它针对某一对象并与该对象的一个事件相联系 应用程序设计的主要工作就是为对象编写事件过程的代码。事件过程的形式如下: sub 对象名_事件(对象引用,事件信息)handles 事件处理程序 事件过程代码 end sub 对象引用:指向引发事件的对象 事件信息:与事件相关的信息,事件过程,本章目录,例2.1 在命令按钮的click事

11、件过程,改变按钮的字体颜色. 代码说明 注意:在代码窗,自动产生事件过程的模板,不要修改模板的内容,只需键入过程的代码。 一个动作可能同时发生多个事件。例如单击鼠标同时发生了: click、mousedown、mouseup事件 编程时,只要对需要的事件过程编码,无编码的事件为空事件,系统就不处理该事件过程,本章目录,事件驱动程序设计方式: 程序执行的先后次序与程序设计者无关,取决于用户的操作。 vb.net程序的执行步骤: 启动应用程序,装载和显示窗体; 窗体(或窗体上的控件)等待事件的发生; 事件发生时,执行对应的事件过程; 重复执行步骤和,事件驱动程序设计,本章目录,方法,面向对象的程序

12、设计语言,为程序设计人员提供了一种特殊的过程和函数,称为方法。 方法是面向对象的,调用时一定要指明对象。对象方法的调用格式为: 对象.方法 参数名表 若省略对象,表示当前对象,一般指窗体。 例如:textbox1.focus 此语句使textbox1控件获得焦点,光标在本文框内闪烁,本章目录,2.2 建立简单的应用程序,例2.2 编写一个人民币与美圆兑换的程序。 建立一个应用程序分为以下几步进行: (1) 建立用户界面的对象 (2) 对象属性的设置 (3) 对象事件过程及编程 (4) 保存和运行程序,本章目录,代码说明,对象事件过程及编程,代码窗口的对象列表框可显示窗体所有对象 过程列表框列出

13、所选中对象的所有事件 例如,在按钮button2的click事件加入代码: sub button2_click(byval sender as system.object, _ byval e as system.eventargs) handles button2.click textbox1.text = val(textbox3.text) * val(textbox2.text) end sub val( )函数 将数字字符转换成数值型,本章目录,保存程序和文件组成,程序存盘后将建立一个文件夹,包含如下内容: (1)xxx.sln 项目关联、配置等的信息 (2) xxx.suo 开发环

14、境选项的信息 (3) xxx.vbproj 项目文件 (4)form1.vb 窗体文件 (5)assemblyinfo.vb 项目集合信息(系统自动建立) (6) xxx.exe 可执行文件(在bin文件夹) (7)bin文件夹 可执行文件的默认路径, 可用application.startuppath()获得该路径。 (8)debug 文件夹 存放程序调试产生的信息,本章目录,2.3 窗体和基本控件,2.3.1 通用属性 属性设置两种方式: 通过属性窗口设置 在代码设计窗口通过代码来设置 在vb.net中,属性的类型有: 基本数据类型 枚举类型 结构类型 用代码设置时,需要用不同方式表示不同

15、的类型,本章目录,2.3.1 通用属性,1) name 所有对象都具有的属性,表示所创建的对象名称。在程序中通过对象名称来引用对象,不会显示在窗体上。 (2) text 用于在窗体上显示对象的文本 textbox控件的text还可以获取输入信息,本章目录,3) 控件布局属性 控件布局由location、size结构来实现,它们各有一对整数来表示,整数单位为像素。 location 控件左上角位置, size 控件大小 例如,命令按钮控件布局 button1.location = new point(88, 48) button1.size = new size(80, 32) 也可用left、

16、top定位;用width和height来表示控件的宽度和高度,本章目录,等效的语句设置: button1.left = 88 button1.top = 48 button1.width = 80 button1.height = 32,4) font 属性值是font类的对象,一般通过font属性对话框设置,若在程序代码中需要改变文本的外观,则应通过new创建 font 对象来改变字体。 例如,label1.font = new system.drawing.font(arial, 10,本章目录,5) forecolor、backcolor 颜色属性 forecolor 控件正文前景色 b

17、ackcolor 背景色 (6) cursor 指示鼠标光标图像 设置值是一个cursors枚举类型的枚举值。若要用户定义自己的指针图标,可通过如下语句实现: 对象名.cursor = new system.windows.forms.cursor(图标文件名,本章目录,7) dock 控件放置靠窗体边框的位置,属性值是dockstyle枚举类型,有六个枚举值 (8) enabled、visible 控件的有效、可见性,本章目录,9) tabindex 按tab键时,焦点在各个控件移动的顺序,2.3.2 窗体,窗体是一块画布,是所有控件的容器,可以根据需要利用工具箱上的控件在窗体上画界面。 1

18、. 主要属性,本章目录,窗体-属性,1) maxbutton、minbutton 设置为true,窗体上有最大(小)化按钮;为false时无最大(小)化按钮 (2) icon、controlbox 窗体图标、控制菜单 controlbox 属性为true,窗体上有控制菜单框;为false时无控制菜单(系统将maxbutton和minbutton自动设置为false) (3) backgroundimage 窗体背景图案 (4) formborderstyle 窗体的边框类型,本章目录,窗体-事件,最常用的事件有click、dblclick和load load事件 窗体装入内存时触发(应用程序启

19、动时自动执行该事件),常用来在启动时对属性和变量初始化。 例2.3 编写三个事件过程,要求如下: 启动窗体,在标题栏显示“装入窗体”,并将tongji.bmp作为背景图平铺窗体、窗体边框为fixed3d; 单击窗体,标题栏显示对应的文字、装入tongji-2.bmp图片大小为264256,要求图片正好充满窗体。 双击窗体,标题栏显示对应的文字、窗体无最大化和最小化按钮,清除装入的图片,代码说明,本章目录,窗体-方法,使用方法的语法形式: 对象.方法参数列表 窗体方法主要有 showdialog 、show、hide等,主要用于多窗体的显示和隐藏等 例如:me.hide,本章目录,2.3.3 标

20、签-属性,标签用来显示文本信息(不能输入) 除name、font、size、location、enable等属性外,其它主要属性: (1)text、textalign:设置显示的文本、文本的对齐方式,textalign 属性是枚举类型,提供标签控件上文本的9种对齐方式,本章目录,2) backcolor 背景色(默认与窗体背景相同)。若要以透明方式显示,需要设置color枚举类型的transparent。 (3) borderstyle 标签控件边框样式 none 控件周围没有边框(默认值) fixedsingle 控件带有单边框 fixed3d 控件带有立体边框 (4) autosize 控

21、件是否能自动调整大小 当值为false,保持控件原设计时的大小,正文若太长则显示其中的一部分,本章目录,5) image、imagealign 设置控件的背景图案和图案对齐方式 imagealign属性与textalign类似 通过代码设置图案: 标签名.image = image.fromfile(图片名) 例2.4 在4个标签中存放4个方向的“手指”图片,当单击某方向时,利用“dock”属性定位第5个标签、并显示相关信息,代码说明,本章目录,2.3.4 文本框,文本框是一个文本编辑区域,可以在该区域输入、编辑、修改和显示正文内容。 (1) text 显示或输入的正文内容 (2) maxle

22、ngth 设置文本框可输入的文字最大长度。默认值为0,表示可以输入任意长字符串。 注意:在vb.net中字符长度以字为单位,也就是一个西文字符与一个汉字都是一个字,长度为1,本章目录,3) multiline 多行属性 设置为true时,文本框可以输入或显示多行正文,同时具有文字处理器的自动换行功能,按enter键可插入一空行。 (4) scrollbars 滚动条属性 none 无滚动条 horizontal 水平滚动条 vertical 垂直滚动条 both 同时加水平和垂直滚动条 当multiline为true时,scrollbars才有效,本章目录,5) passwordchar 设置

23、显示文本的替代符。例如,当设置为“*”,则在文本框输入的内容均以“*”显示,而存储的值是用户输入的原文。一般用于设置口令的输入。 当multiline为true时,该属性不起作用,密码不允许多行。 (6) readonly 指定文本控件是否可被编辑,默认值为false(可编辑),当设置为true时,文本控件相当于标签控件的作用,本章目录,7)文本内容进行选择操作 selectionstart 选定的正文开始位置 selectionlength 选定的正文长度 selectedtext 选定的正文内容 设置selectionstart和selectionlength属性后, selectedte

24、xt 会自动存放设定的正文 例2.5 利用属性实现对文本信息的剪切、拷贝、粘贴等功能,本章目录,代码说明,文本框-事件,1) textchanged事件 当text属性值发生改变时引发该事件 例 在文本框每输入一个字符就引发一次事件 (2) keypress事件 按下并且释放键盘上的一个键时,引发焦点所在控件的keypress事件,所按键的值存放在参数e.keychar中 例 对回车的判断 asc(e.keychar)=13,本章目录,3) lostfocus事件 对象失去焦点时发生lostfocus事件 该事件主要是用来对数据进行验证和确认,常用于检查text属性的内容。 (4) gotfo

25、cus事件 gotfocus事件与lostfocus事件相反,当一个对象获得焦点时发生,本章目录,文本框-方法,文本框最有用的方法是focus,把光标移到指定的文本框中。其形式如下: 对象. focus focus还可以用于如checkbox、button、listbox、combobox等控件。 例2.6 对输入的数据进行合法性检验,过滤不合法的数据,本章目录,代码说明,2.3.5 命令按钮,用于程序运行时执行相应的事件 1. 属性 (1) text 命令按钮上显示的文字 (2) flatstyle 按钮的外观 该属性有4个枚举值: flat 以平面显示按钮 popup 鼠标在按钮上以fla

26、t形式显示,否则以standand显示 standand 以三维效果显示(默认) system 由操作系统决定外观形式,本章目录,命令按钮,3) image、backgroundimage 当flatstyle属性值设置为非system的值时,则可以使用image、backgroundimage属性为按钮设置图形或背景图,显示不同的图形文件(.bmp和.ico)。通常情况使用image属性。 (4) textalign、imagealign 设置文本、图形在按钮上的对齐方式 2. 事件 命令按钮一般接收click事件,本章目录,2.4 综合应用,例2.7建立一个类似记事本的应用程序,提供: (

27、1) 剪切、复制和粘贴的编辑操作 (2) 字体大小的格式设置 分析: (1) 建立一个文本框输入文本,文本框应该有滚动条,为了便于调试,程序运行时文本框有初始值。 (2) 利用文本框的selectedtext属性实现“剪切、复制和粘贴”的编辑操作; (3) “格式”设置利用font对象实现,代码说明,本章目录,本章小节,类是同种对象的集合与抽象,包含所创建对象的属性描述和行为特征的定义,是创建对象实例的模板。 对象三要素:属性、事件、方法 属性的类型:基本数据类型、枚举类型、结构类型 窗体 是所有控件的容器 基本控件 标签、文本框、命令按钮,本章目录,思考题,1. 什么是类?什么是对象?什么是

28、事件过程? 2. 属性和方法的区别是什么? 3. 如何建立一个完整的应用程序? 4. 如何在文本框内显示多行文本? 5. 如何使对象获得焦点? 6.如何在命令按钮上设置图形,本章目录,第三章 vb.net语言基础,3.1 变量、常量与数据类型 3.2 运算符和表达式 3.3 常用函数 3.4 程序结构和编码规则 3.5 综合应用,本章目录,3.1 变量、常量和数据类型,3.1.1变量概述 变量 在程序运行中其存储的值可以改变 命名规则: 必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度小于等于255个字符 不能使用vb.net中的关键字 vb.net不区分变量名的大小写,一般变量名首

29、字母用大写,其余用小写字母表示;常量全部用大写字母表示,本章目录,3.1.1变量概述,值类型和引用类型的变量 值类型变量 直接存放数据。每个值类型变量有它自己的数据拷贝,因此对一个值类型变量的操作不能影响其他的变量。 引用类型变量 并不真的包含数据,存放的是指向其他数据的内存地址的指针,也就是把数据值所在的地址作为引用变量的值。该种变量对象的引用简称为赋值或存储。字符串、数组和类是引用类型的变量,本章目录,变量概述,x是值类型变量,存放的值为1234; s是引用类型变量,指向vb.net的一个引用,本章目录,3.1.2 数据类型,本章目录,3.1.3变量声明,1. 用dim语句显式声明变量 d

30、im 变量名 as 类型=初始值 as部分缺省,创建的变量为object类型 初始值子句,表示给声明的变量赋值 一条dim语句可同时定义多个变量。多个相同类型变量,可用一个as来指定(前面几个由逗号分隔),这时不能给变量赋初值。 例如:dim m,n,j as integer,x,y as single,k k为object类型,本章目录,变量声明,2. 隐式声明 默认状态下,系统要求对使用的变量都显式声明,当使用没有声明的变量时,该变量名下有绿色曲线(表示语法错)。若对变量不声明而直接使用,称为隐式声明。则需要在模块中所有程序代码的最前面加语句: option explicit off 对初

31、学者,最好变量加以显式声明,这样有助于程序的查错,本章目录,3.1.4 常量,常量是在程序运行中不变的量,vb.net中有三种常量: 直接常量 其常数值直接反映了其类型 符号常量 用户声明,便于程序阅读或修改 const 符号常量名 as 类型 = 表达式 系统常量 系统提供许多内部常量和枚举 例如:vbcrlf 回车/换行组合符 枚举 如控件的颜色、边框线型等,本章目录,3.2 运算符和表达式,和其他语言一样,vb.net中也具有丰富的运算符,通过运算符和操作数组合成表达式,实现程序编制中所需的大量操作。 运算符是表示实现某种运算的符号。vb.net中的运算符可分算术运算符、字符串运算符、关

32、系运算符和逻辑运算符四类,本章目录,3.2.1 算术运算符,例:5+10 mod 10 9 / 3+2 2 结果:10,注意:对算术运算符两边的操作数应是数值型,若是数字字符或逻辑型,则自动转换成数值类型后再运算。 例如: 30-true 结果是31,逻辑量true转为数值-1,false转为数值0 false + 10 + 4 结果是14,本章目录,字符串运算符, 两旁的操作数可任意,转换成字符型后再连接 + 两旁的操作数应均为字符型;若为数值型则进行算术加运算;若一个为数字字符,另一个为数值,则自动将数字字符转换为数值后进行算术加;若一个为非数字字符型,另一个为数值型,则出错。例如: 操作

33、 结果 操作 结果 ab interval0 例7.8设计一个倒计时应用程序 例7.9用一个定时器控制蝴蝶在窗体内的飞舞,代码说明,代码说明,本章目录,7.1.5超链接,linklabel控件可在windows窗体上创建超链接 重要属性 (1)text 控件上显示的文本 (2)linkarea 用于设置控件上文本的超链接 (3)activelinkcolor color结构类型,用来设置超链接的颜色 (4)visitedlinkcolor color结构类型,用来设置访问过超链接的颜色,本章目录,linklabel控件事件,linkclicked 鼠标单击发生linkclicked事件 使用s

34、ystem.diagnostics.process.start方法打开指定的链接对象 例7.10 访问教育部主页 system.diagnostics.process.start(http:/,本章目录,7.2 通用对话框,net提供了一组基于windows的标准对话框界面。利用通用对话框控件可在窗体上创建打开文件、保存文件、颜色、字体、打印、打印预览等对话框,通用对话框仅用于应用程序与用户之间进行信息交互,是输入输出的界面,不能真正实现文件打开、文件存储、设置颜色、字体设置、打印等操作,如果想要实现这些功能则需要编程实现,本章目录,7.2.1打开文件对话框,由 openfiledialog

35、控件来实现 重要属性 : (1) filename 文件名称,包含路径 (2) filter 确定所显示文件的类型 例如:text files|*.txt|所有文件|*.*显示文本文件和所有文件 (3) filterindex 决定文件列表框中显示第几组类型的文件 (4) initialdirectory 初始化路径,本章目录,打开文件对话框,本章目录,打开文件对话框,例7.11编写一个应用程序,弹出打开文件对话框,从中选择一个bmp位图文件,能在图形框中显示该图片。 例7.12编写一个简单的文本文件编辑程序,代码说明,代码说明,本章目录,7.2.2 保存文件对话框,由 savefiledia

36、log 控件来实现 savefiledialog控件的属性与openfiledialog控件基本相同,特有的属性是defaultext属性,用于设置缺省的扩展名 。 例7.13 为例7.12中的另存为命令按钮编写事件过程,把文本框内的信息存盘,本章目录,7.2.3 颜色对话框,由 colordialog 控件来实现 重要属性color,它返回或设置选定的颜色,属于color结构类型。 例7.14 为例7.12中的颜色命令按钮编写事件过程,设置文本框的前景色。 sub button3_click( ) handles button3.click colordialog1.showdialog()

37、 打开颜色对话框 textbox1.forecolor() = colordialog1.color end sub,设置文件框前景颜色,本章目录,7.2.4 字体对话框,通过fontdialog控件来实现,例7.14 为例7.12中的字体按钮编写设置文本框字体的事件过程。 sub button4_click( ) handles button4.click fontdialog1.showdialog() 打开字体对话框 textbox1.font = fontdialog1.font 设置字体 end sub,font获取选择的字体 color 选定的颜色,showcolor控制是否有“颜

38、色”选项,本章目录,7.3 菜单设计,7.3.1 菜单设计概述 菜单有下拉式菜单和弹出菜单(上下文菜单)。下拉式菜单的组成结构,本章目录,7.3.1 菜单设计概述,net提供了mainmenu和contextmext两个控件,分别用来设计下拉式菜单和弹出式菜单,从这里开始设计下拉式菜单,从这里开始设计弹出菜单,本章目录,菜单设计概述,菜单项除了name、visible、enabled等属性之外,还具有下列重要属性: (1) text 菜单项上显示的标题文本 在字符前加一个 data source = student.mdb provide,指定连接提供程序的名称; data source,用于

39、指定要连接的数据源文件,生成数据集,选择“数据|生成数据集”命令,打开“生成数据集”对话框,1,2. 命名数据集,3,4,生成数据集,选择“数据|生成数据集”命令,打开“生成数据集”对话框,1,2. 命名数据集,3,4,注意:这里的dataset1是指一个数据集的定义,它是一个用xml格式表示的,文件名为dataset1.xsd的数据集定义文件,并不包含任何的数据库中的数据。而按此文件架构产生的dataset11才是一个包含实际数据的数据集对象实例,11.2.3 数据绑定,什么是数据绑定? 数据绑定是一个过程,即在运行时自动为与数据集中的元素关联的控件设置属性。以便通过控件显示数据集中的数据,

40、数据绑定,windows 窗体有简单数据绑定和复杂数据绑定 简单数据绑定 简单数据绑定就是将控件绑定到单个数据字段。每个控件仅显示数据集中的一个字段值。最常用的简单数据绑定是将数据绑定到文本框和标签。要建立数据绑定,需要在设计或运行时对控件的databinding属性进行设置,简单数据绑定,例11.2 数据绑定的操作过程 界面设计,创建和配置数据集,设置绑定属性,程序代码,private sub form1_load() handles mybase.load dataset11.clear() oledbdataadapter1.fill(dataset11, 基本情况) end sub,简

41、单数据绑定,使用bindingcontext 对象浏览数据记录 position 属性 数据集当前记录的位置序号 count 属性 数据表中的记录条数 转跳到第一条记录 me.bindingcontext(dataset11, 基本情况).position = 0 转跳到上一条记录 me.bindingcontext(dataset11, 基本情况).position -= 1 转跳到下一条记录 me.bindingcontext(dataset11, 基本情况).position += 1 最后一条记录的position 属性值等于count 属性值-1,复杂数据绑定,复杂数据绑定允许将多个

42、数据元素绑定到一个控件,同时显示记录源中的多行或多列。支持复杂数据绑定的控件:数据网格datagrid、组合框combobox和列表框listbox等,复杂数据绑定,复杂数据绑定属 性设置,复杂数据绑定,例11.3复杂数据绑定的操作过程 界面设计,创建和配置数据集,数据绑定 本例datagrid控件要绑定不同的表,故需要通过代码设置控件的datasource 属性,程序代码,private sub button1_click() handles button1.click datagrid1.datasource = dataset11.tables(基本情况) end sub private

43、 sub button2_click() handles button2.click datagrid1.datasource = dataset11.tables(成绩表) end sub,11.2.3 使用代码访问数据库,创建数据对象的代码: dim 数据对象 as new 对象类(参数) 例11.4 用代码实现例11.2的功能 界面设计,导入ado.net名称空间 importssystem.data importssystem.data.oledb,创建对象,创建oledbconnection连接对象 创建连接student.mdb的对象objconn,代码: dim strconn

44、as string = provider = microsoft. jet.oledb.4.0; data source = student.mdb dim objconn as new oledbconnection(strconn) objconn.open() 创建创建oledbdataadapter对象 dim strsql = select * from 基本情况 dim objadap as new oledbdataadapter(strsql, objconn,创建对象,创建数据集对象 dim objdset as new dataset 用数据集的“基本情况”表填充objds

45、et对象 objadap.fill(objdset, 基本情况,使用代码绑定数据,实现数据绑定 使用控件的databindings属性的add方法建立绑定: 控件对象.databindings.add(new binding(控件属性, 数据集, 字段名) 例 将字段姓名绑定到控件textbox1的text 属性: textbox1.databindings.add(new binding(text, objdset, 基本情况.姓名,记录的浏览,浏览记录,各命令按钮的click 事件代码为: 首记录: me.bindingcontext(objdset, 基本情况).position = 0

46、 上一条: me.bindingcontext(objdset, 基本情况).position -= 1 下一条: me.bindingcontext(objdset, 基本情况).position += 1 尾记录: me.bindingcontext(objdset, 基本情况).position = me.bindingcontext (objdset, 基本情况).count-1,11.3 数据库操作,11.3.1 数据库编辑操作 常见的编辑操作就是对数据的增、删、改。使用命令对象直接对数据源进行操作,方法如下: commandtext属性 设置sql语句 调用execute方法 执行

47、sql语句 executereader 返回datareader结果集 executenonquery 不返回数据的sql命令(增、删、改) executescalar 返回单个数据的sql命令(例对数据的统计、求和,增加数据记录,使用insert语句插入一条记录到数据源。例如: insert into 基本情况(姓名, 学号) values (李力, 50101) 实际参数可通过文本框输入,可在values短语中使用标记传递实参值: insert into 基本情况(姓名, 学号) values (name, num) 而参数定义的语法为: dim 参数名 as new oledbparam

48、eter(sql查询或更新字符串中的映射名,数据类型,长度,增加数据记录例,例11.5 在例11.4的基础上添加增加记录、删除记录、修改记录按钮,当单击“增加”按钮时,先清空文本框,并将按钮提示改变成“确认”;当在文本框输入数据后,再单击“确认”,将文本框内输入的数据构成一条记录插入到数据源、重新填充数据集并恢复按钮提示,代码说明,删除数据源内的记录,删除数据源内的记录使用delect语句 delect 基本情况 where 学号 = 50102 实参50102通过文本框输入。要用输入值构成删除条件,除了采用参数传递方法外,也可用字符连接运算符拼接变量形成条件,例如: delect 基本情况

49、where 学号 = & textbox2.text 注意:如果字段的类型为字符型,则输入值的两侧加上单引号: delect 基本情况 where 学号 = & textbox2.text & 字段的类型为日期型,将单引号改为,删除数据记录,删除数据集内的行使用rows对象的delete方法。 例如,删除tables(“基本情况”)中的第三条记录: objdset.tables (基本情况 ).rows (2).delete delete方法并不真正实现删除,而只是在rows集合中对指定的行作删除标记,直到数据集对象调用acceptchanges方法的时候,才真正被删除;如果是rejectch

50、anges方法被调用,那么delete方法删除的数据行对象将被恢复。 例11.6 为例11.5中删除按钮添加代码,代码说明,修改数据记录,修改数据源中的记录使用update语句 update 基本情况 set 专业= 计算机 where 学号 = 50102 修改程序编写与增加记录类似,其关键是: 使用参数传递或字符动态拼接的方法将新的数据传递到update 语句 能在数据源中定位要更新的记录(通常可使用关键字段作为定位条件) 对于数据集,数据绑定结构通常是双向的,能自动将更改从数据绑定控件发送到数据集。 例11.7 为修改按钮添加代码,代码说明,11.3.2 数据库查询操作,方法一 通过命令

51、对象执行sql语句,从数据源中获取信息,查询条件由select语句的where短语构成,使用and与or逻辑运算符组合出复杂的查询条件 方法二 使用数据集的数据视图(dataview)的筛选功能,数据库查询操作,数据视图(dataview)的主要方法与属性,模糊查询,模糊查询使用运算符like,用百分号%来代替任意个不确定的内容,用下划线_代替一个不确定的内容。 例如,“姓名 like 张%”将查询所有张姓的人员,而“姓名 like 张_” 查询以“张”开头,只有两个字的记录。 例11.8 设计一个应用程序,演示不同的查询功能,代码说明,11.3.3 blob数据处理,1预备知识 二进制大型对

52、象(binary large object,blob)是指任何需要存入数据库的随机大块字节流数据,例如图形或声音文件。数据库中存放blob的字段必须是二进制类型(在access中为ole对象),在ado.net中如何处理blob类型的数据,把图形作为数据库的一个字段值存放在数据库,并能显示图形数据,blob数据处理,在picturebox控件显示image对象时,不能直接绑定到字段。要操作blob类型的数据,需要使用stream类。stream是数据流,包含在system.io大类中。filestream是用于文件操作的stream,memorystream 在内存封装blob数据,这样就能直

53、接访问这些封装的数据,blob数据处理,stream通过一个字节类型的数组执行对文件的读写操作。使用read或write方法时,需要指定字节起始位置和最多处理的字节数 filestream使用格式: filestream(文件路径,filemode.模式,fileaccess.操作) 模式为:open、create 操作为:read、write,图形数据写入数据库,用filestream对象读模式打开图形文件 dim 文件对象 as new filestream(图形文件名, filemode.open, fileaccess.read) 定义字节类型的数组(大小为文件长度) dim 数组()

54、 as byte redim 数组(文件对象.length ) 读文件到数组 文件对象.read(数组, 0, 文件对象.length) 文件对象.close() 写入到数据源 数据集.tables(数据表).rows(记录号).item(图形字段名) =数组,思考题,1. 什么是.net框架? 2. 简述vb.net的特点 3. vb.net有多种类型的窗口,若想在设计时看到代码窗口,怎样操作? 4. 如何使各窗口显示或不显示? 5. 如果窗口布局搞乱了,如何恢复默认布局? 6. 解决方案与项目的区别,第1章 sql server 2000概述,1.1 sql server 2000简介 1

55、.2 sql server 2000特点 1.3 sql server 2000的安装 1.4 sql server 2000的系统数据库 1.5 transact-sql语言简介,1.1 sql server 2000简介,sql server是使用客户机/服务器(c/s)体系结构的关系型数据库管理系统(rdbms)。 1988年推出了第一个os/2版本。 1992年,sql server移植到nt上后,microsoft成了这个项目的主导者。 1994年以后,microsoft专注于开发、推广sql server的windows nt版本 1996年,microsoft公司推出了sql s

56、erver 6.5版本 1998年,推出了sql server 7.0版本 2000年推出了sql server 2000,1.1 sql server 2000简介,sql server 2000常见的版本有:企业版(enterprise edition)、标准版(standard edition)、个人版(personal edition)和开发人员版(developer edition)。 企业版:一般作为数据库服务器使用。 标准版:一般用于小型的工作组或部门。 个人版:主要适用于移动用户。 开发人员版:是一个适用于应用程序开发的版本,1.2 sql server 2000特点,1sql

57、 server的主要特点 真正的客户机/服务器体系结构。 图形化用户界面。 丰富的编程接口工具。 sql server与windows nt完全集成。 具有很好的伸缩性。 对web技术的支持。 sql server提供数据仓库功能,1.2 sql server 2000特点,2sql server 2000的新特性 多个sql server实例:sql server 2000支持在同一台计算机上运行多个关系数据库引擎的实例。 引入了三种新的数据类型。 支持xml(extensive markup language,扩展标记语言)。 支持用户自定义函数。 支持强大的基于web的分析。 支持ole

58、 db和多种查询。 支持分布式的分区视图,1.3 sql server 2000的安装,1.3.1 sql server 2000的环境需求 1硬件需求 计算机:intel及其兼容计算机,pentium 166mz或者更高处理器或dec alpha及其兼容系统。 内存(ram):企业版最少64mb内存,其它版本最少需要32mb内存,建议使用更多的内存。 硬盘空间:对于sql server 2000来说,完全安装(full)需要180mb的空间,典型安装(typical)需要170mb的空间,最小安装(minimum)需要65mb的空间,1.3 sql server 2000的安装,2软件需求,

59、1.3 sql server 2000的安装,1.3.2 sql server 2000的安装 1.3.3 卸载sql server 2000,1.4 sql server 2000的系统数据库,1.4.1 sql server 2000系统数据库简介 sql server 2000安装成功后,系统会自动创建6个系统数据库 。这些系统数据库的文件存储在microsoft sql server默认安装目录下的mssql子目录的data文件夹中,数据库文件的扩展名为 .mdf,数据库日志文件的扩展名为 .ldf,1.4 sql server 2000的系统数据库,master数据库:记录了sql

60、server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、sql server的初始化信息和其它系统数据库及用户数据库的相关信息。 model数据库:是所有用户数据库和tempdb数据库的模板数据库。它含有master数据库的所有系统表子集,这些系统数据库是每个用户定义数据库时都需要的,1.4 sql server 2000的系统数据库,msdb数据库:是代理服务数据库。 tempdb数据库:是一个临时数据库。tempdb数据库由整个系统的所有数据库使用。sql server每次启动时,tempdb数据库被重新建立。当用户与sql server断开连接时,其临时表和存储过程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论