VB程序设计电子教案第6章输入输出操作管理ppt课件

上传人:我*** 文档编号:148527643 上传时间:2020-10-20 格式:PPT 页数:44 大小:149.50KB
返回 下载 相关 举报
VB程序设计电子教案第6章输入输出操作管理ppt课件_第1页
第1页 / 共44页
VB程序设计电子教案第6章输入输出操作管理ppt课件_第2页
第2页 / 共44页
VB程序设计电子教案第6章输入输出操作管理ppt课件_第3页
第3页 / 共44页
VB程序设计电子教案第6章输入输出操作管理ppt课件_第4页
第4页 / 共44页
VB程序设计电子教案第6章输入输出操作管理ppt课件_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《VB程序设计电子教案第6章输入输出操作管理ppt课件》由会员分享,可在线阅读,更多相关《VB程序设计电子教案第6章输入输出操作管理ppt课件(44页珍藏版)》请在金锄头文库上搜索。

1、第6章输入/输出操作管理,键盘响应与鼠标响应 文件的数据管理 文件系统控件,本章学习目标,熟练掌握键盘字符、功能键、控制键等各类按键的识别方法 掌握MouseDown、MouseUp和MouseMove三类鼠标响应事件的编程方法 全面掌握顺序文件、随机文件的打开、读写和关闭操作 掌握三种文件系统控件的使用,尤其是如何实现三种控件的功能同步,键盘响应示例,编写一个可判断功能键F2与Alt、Shift、Ctrl中的哪一个或哪两个进行组合控制的键盘响应示例程序,键盘响应示例实现方法,选择正确的响应事件 如何区分用户按键,选择正确的响应事件,在VB6.0中,可以响应用户按键的事件有:KeyPress(

2、若有键被按下)、KeyDown(按下某个键)、KeyUp(松开某个键)三种,但KeyPress事件只能区分普通的ASCII码字符,无法判断组合控制键、光标移动键等,因此本示例中必须使用KeyDown或KeyUp事件。,如何区分用户按键,无论是KeyDown还是KeyUp事件,都有两个参数:KeyCode As Integer, Shift As Integer,其中Keycode中存放所按键的键值(不区分大小写字符,但区分大小键盘);Shift参数用于表示事件发生时,Shift键、Alt键和Ctrl键的状态。 键盘上各键的键值可通过VB对象浏览器了解 例如:判断用户是否按下F2键,只需判断Ke

3、yCode=vbKeyF2是否成立,VB中的三个测试常量,VbShiftMask、VbCtrlMask及VbAltMask,其值分别表示1、2和4 。 常见的测试这三种控制键的方法 :,先设置以下三个表达式: shiftdown = (Shift And vbShiftMask) 0 altdown = (Shift And vbAltMask) 0 ctrldown = (Shift And vbCtrlMask) 0 如果shiftdown and altdown and ctrldown为真,则表示按下了ShiftCtrlAlt键;若shiftdown为真表示按下了Shift键,其余以此

4、类推。,键盘响应相关知识点,KeyPress、KeyUp和KeyDown键盘响应事件 三种事件的响应差异 KeyPress事件的使用,KeyPress、KeyUp和KeyDown,当用户按下并且释放一个ANSI键就会触发KeyPress事件; 按下一个键便触发KeyDown事件,释放引发KeyUp事件。 在引发键盘事件的同时,用户所按的键盘码作为实参传递给相应的事件过程,供程序判断识别用户的操作。,三种事件的响应差异,KeyPress只响应按下标准ASCII字符表中对应的键时的事件,如回车键、Tab键、Backspace键等以及标准键盘中的字母、标点、数字键等。 KeyDown和KeyUp事件

5、能区分控制键、功能键、大小键盘区域内的字符等KeyPress无法处理的情况 ,但不区分大小写。 KeyDown与KeyUp无本质差别,但若用户需进行单步跟踪调试时,可选择KeyUp,KeyPress事件的使用,将文本框Text1中输入的文本转换为大写在文本框Text2中显示。 Private Sub Text1_KeyPress(KeyAscii As Integer) Text2 = Text2 + UCase(Chr(KeyAscii) End Sub 将KeyAscii参数设置为0时,可取消击键事件,这样对象便接收不到字符,即可屏蔽键盘输入。,【思考题6-1】,无论用户在文本框Text1

6、中输入任何字符,程序均在Text1中显示大写字符A; 当用户在Text1中按键时,直接显示所按键的大写。,鼠标响应编程示例,一个可进行简单的随手涂鸦的画图程序。 当用户在窗体上按下鼠标不放并移动时,便可进行随手涂鸦,此时鼠标指针为十字形,松开鼠标,鼠标指针恢复为箭头形状。,随手涂鸦的画图程序实现分析,选择正确的响应事件 :MouseDown,MouseUp及MouseMove 如何设置鼠标指针 如何实现随手涂鸦,如何设置鼠标指针,通过MousePointer属性,大部分控件都具有该属性。在程序设计中,往往可通过不同的鼠标指针形状来表达正在执行不同的任务,如用沙漏状表示等待状态;十字形表示画图状

7、态;箭头及问号状表示求助状态等等。 对象名.MousePointer设定值,如何实现随手涂鸦,可在MouseMove事件过程中,用画线的方法来实现该功能。 用Line -(X, Y)表示从当前位置画线到(X,Y)坐标。,鼠标响应相关知识点,MouseDown、MouseUp和MouseMove事件的应用 DragDrop和DragOver事件,MouseDown、MouseUp和MouseMove的应用,事件过程的一般格式(以窗体对象为例): Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single,

8、 Y As Single) Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 这三种事件过程所包含的参数完全相同,参数的具体含义参见教材,DragDrop和DragOver事件,DragOver事件在拖放操作正在进行时发生; DragDrop事件最常见的激活状态是在一个完整的拖放动作完成(如将

9、一外控件拖到另一个对象上,并释放了鼠标)时。 DragDrop事件过程用来控制在一个拖动操作完成时将会发生的情况,而DragOver事件过程则用来处理拖动正在进行时需执行的功能。,DragDrop和DragOver事件过程,事件过程的一般格式(以窗体对象为例): Sub Form_DragDrop(Source As Control, X As Single, Y As Single) Sub Form_DragOver(Source As Control, X As Single, Y As Single, State As Integer) 其中: Source :表示正在被拖放的控件对象

10、; X,Y:指当前鼠标指针在目标对象上的位置坐标; State:代表源控件被拖动的情况,如是正在向目标范围内拖动(值为0),还是向目标范围外拖动(值为1),或者是在目标范围内部移动(值为2)。,文件的数据管理,文件管理的基本概念 文件的基本操作 文件操作应用实例,文件管理的基本概念,文件的结构特点 VB中文件的分类 根据文件的存取方式和结构分 根据文件的数据性质分 根据文件中数据的编码方式分 仅讨论顺序文件和随机文件的操作,文件的基本操作,最基本的三类文件操作:打开文件读写文件关闭文件。 相关的判断函数、定位函数等。,顺序文件的基本操作,顺序文件的打开 顺序文件的读操作 顺序文件的写操作 关闭

11、文件,Close 关闭所有打开的文件 Close #文件号 ,#文件号.关闭指定的文件,顺序文件的打开,格式一:Open 文件名 for input as #文件号 功能:打开已有数据的文件准备读操作 示例:Open d:TEST1.dat For Input As #1 格式二:Open 文件名 for output as #文件号 功能:打开文件准备写操作(会清除原数据) 示例:Open d:test2.dat For Output As #2 格式三:Open 文件名 for append as #文件号 功能:打开一文件准备追加数据(原文件可有可无),顺序文件的读操作,格式一:Inpu

12、t #文件号,变量列表 功能:从打开的文件中依次读取数据赋于各变量(将逗号和换行符作为数据分隔符) 格式二:Line Input #文件号,变量名 从文件中读取一行数据 ,直到遇到回车chr(13)或回车换行chr(13)+chr(10)为止 格式三:s=Input(字符个数,#文件号) 功能:从以Input 或 Binary 方式打开的文件中读取指定个数的字符串(作为函数返回值),字符可包括标点符号、回车、空白等。 示例:MyChar = Input(1, #1) 从#1文件中读取一个字符赋给MyChar变量,顺序文件的写操作,格式一:Write #文件号 ,表达式表 功能:将各数据项写入文

13、件中,自动以逗号作为数据分隔符,且对字符串数据加双引号。 示例: Write # 6, zhang;wang;li Write # 6, 78;99;67 则文件中的数据存储形式为: zhang,wang,li 78,99,67,格式二:Print #文件号 ,表达式表 功能:按Print格式打印的各数据项写入文件中,不自动加任何分隔符 示例: Print # 1, zhang;wang;li Print # 1, 78;99;67 则文件中的数据存储形式为: zhangwangli 78 99 67,随机文件的基本操作,随机文件的打开 随机文件的读操作 随机文件的写操作,随机文件的打开,格式

14、: Open 文件名 for Random as #文件号 len=记录长度 功能:打开一指定记录长度(0-32K)的随机文件以准备读写操作,默认记录长度为128字节。 随机文件的记录长度可通过Len函数获得 ,随机文件打开可同时进行读写操作,随机文件的读操作,格式: Get #文件号,记录号,记录变量 功能:将指定的记录读到记录变量中(起始记录为)。每读一条记录,记录指针自动指向下一条记录,记录号加1 。记录号可缺省,表示读取当前记录,但其后的逗号不可省。,随机文件的写操作,格式: Put #文件号,记录号,记录变量 功能:将记录变量中的内容写到指定记录号的位置(原位置数据被盖),省略记录号

15、时,指插入到当前记录之后。,与文件操作相关的函数,FreeFile() LOF(文件号) FileLen(文件名) EOF(文件号) 获取文件当前读/写的位置,文件操作应用实例 【实例6-1】,【实例6-1】顺序文件的基本操作。,实现分析,文件读写操作的实现 在读取文件时,可采用LineInput将读取的行信息连接起来暂时保存到某一内存变量以便统一显示在文本框中。 Line Input #filenum, s buffer = buffer + s + Chr(13) + Chr(10),实现分析-考虑程序的健壮性问题,(2) 避免用户未选取任何文件便进行文件读写操作: 可在程序中采用类似于I

16、f Len(Cdl1.FileName) 0(其中Cdl1为通用对话框名称)的语句来判断是否已选取了文件名。,filesize = FileLen(FileName)获取指定文件名的文件长度 If filesize Maxlen ThenMaxlen为一自定义常量(65535) MsgBox 文件太大了! Exit Sub End If,(1) 避免长度超过规定的文件的读写操作:,文件操作应用实例【实例6-2】,【实例6-2】随机文件的基本操作。,【实例6-2】实现分析,界面设置 文件记录类型的定义 如何实现记录的添加 显示学生信息时的一些细节问题,文件系统控件简介,驱动器列表框 目录列表框 文件列表框,驱动器列表框,驱动器列表框是供用户操作计算机中各驱动器的一个下拉式列表框,主要属性是Drive,该属性不能在设计状态时设置,只能在程序中被引用或设置。 Drive属性的设置方法 :对象名.Drive驱动器名 , 例如:DriveList1.Drive=”e:”,目录列表框,目录列表框显示当前驱动器的目录结构及当前目录下的所有子目录,供用户选

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号