收藏 分销(赏)

VB6.0培训教案.doc

上传人:快乐****生活 文档编号:2212104 上传时间:2024-05-23 格式:DOC 页数:165 大小:2.22MB
下载 相关 举报
VB6.0培训教案.doc_第1页
第1页 / 共165页
VB6.0培训教案.doc_第2页
第2页 / 共165页
VB6.0培训教案.doc_第3页
第3页 / 共165页
VB6.0培训教案.doc_第4页
第4页 / 共165页
VB6.0培训教案.doc_第5页
第5页 / 共165页
点击查看更多>>
资源描述

1、Visual Basic 6.0 培训教案提前需要进行的环境安装准备:1. Visual Basic 6.0中文企业版 + SP62. 配套的MSDN中文版3. 配套的Visual SourceSafe 6.04. Codejock Xtreme Suite Pro ActiveX 9.601控件包5. VS FlexGrid Pro 8.0控件包6. Axialis IconWorkshop以及IconExperience图标套件7. ComExplorer8. 非Win98、Windows7、Vista操作系统1 Visual Basic 概述1.1 IDE集成开发环境:1.1.1 布局与

2、功能区:运行Visual Basic 6.0,在”新建工程”提示框处点击”确定”,就进入了IDE集成开发环境,如下图所示:1) 菜单与工具栏:缺省VB只显示了标准的工具栏,根据编程的需要,应该通过右键菜单将所有的工具栏都显示出来并进行合理的排布,特别是其中的”调试”工具栏比较重要。2) 窗体设置区域:这里是模拟运行的效果所显示的窗体,可在上面进行控件拖放等可视化设计;根据所使用控件的不同,不一定能完全达到所见即所得的效果。3) 控件工具箱:显示可用的控件图标,这里只缺省列举VB内置的标准控件。4) 工程浏览器:显示各个工程以及工程所包含的各种文件的树形浏览器;对一个工程组,可能包含多个工程,都

3、显示在浏览器中。5) 属性浏览器:用于显示窗体、或者窗体中当前所选择控件的属性列表;也可以显示工程浏览器中当前所选择的其他文件的属性。6) 窗体布局:用于直观显示当前窗体在屏幕中的布局,可拖动其中的窗体改变屏幕位置;该区域一般不使用,为增加其他区域的可视区域可将它隐藏。开发过程中,根据可视区域尺寸的需要,以上各个区域都可以关闭或者通过工具栏上面的按钮显示出来。注:图例中有一些菜单、工具条、页卡与标准的VB环境有所区别,是因为安装了CodeSmart辅助编程插件。1.1.2 可视化设计开发:窗体缺省是处于设计状态,在设计状态下,点击控件工具箱上面的对应控件,然后在窗体上面进行拖放,就添加了这个控

4、件;在窗体上面摆放多个控件,并进行拖放排布,在属性浏览器中设置它的相应属性,就是可视化设计的主要工作。除了标准的内置控件外,可以在控件工具箱上面点击右键,选择”部件”(或者选择菜单”工程部件”),就会弹出第三方控件列表对话框,勾选对应的控件之后,在控件工具箱上面会增加显示对应的控件图标。在工程浏览器中,左上角的两个图标用于切换窗体的设计界面和代码书写界面,双击窗体设计界面也可以切换到代码书写界面;代码书写界面类似下图:其中有两个下拉框,第一个下拉框定位具体的对象(窗体或者控件),第二个下拉框定位它的具体某个事件,当事件函数在代码中不存在时,会自动产生。除了事件函数外,也可能有一些自已书写的函数

5、,可以在第一个下拉框中选择”(通用)”,然后就可以在第二个下拉框中找到这些函数进行定位。Visual Baisc的代码都是由一个个的函数组成,所以又称为函数式编程。在窗体界面设计好,代码编写完成之后,点击工具栏上面的”启动”按钮(F5),即可运行程序;运行程序有两种方式,一种是”启动”,一种是”全编译执行”(Ctrl+F5),全编译执行可以检查出代码中的编译错误,从好的习惯出发,一般都应该使用”全编译执行”。程序运行之后,如果要进行调试,可以点击工具栏上面的”中断”按钮(Ctrl+Break),即进入代码调试状态;如果要终止程序,可以关闭窗体,或者点击工具栏上面的”结束”按钮。1.1.3 VB

6、环境设置:在使用VB环境进行开发之前,先可以进行一些基本的选项设置,但不是必须的。选择菜单”工具选项”进入选项设置,下面介绍几个常用的选项设置,其他的保持缺省即可:1) 自动语法检测:在”编辑器”页面,该选项一般情况下应勾上,这样在代码书写过程中,会自动对错误的语法进行检查提示。2) 要求变量声明:在”编辑器”页面,该选项一般情况下应勾上,虽然VB支持不声明变量直接使用,但这样是不严谨的,我们的规范也不允许。该选项勾上的情况下,代码窗体的最前面会自动加上” Option Explicit”关键字。3) 代码颜色和字体:在”编辑器格式”页面,这里面可以根据自身的情况,设置对应的颜色和字体。4)

7、窗体网格设置:在”通用”页面,根据自身情况,确定是否勾选”显示网格”和”对齐控件到网络”;5) 错误捕获:在”通用”页面,这个是比较重要的参数,影响程序调试。但具体选项的作用,我们在后面错误调试的章节再进行说明。另外VB开发环境是一个开放的环境,可以在IDE环境中加载插件以提供一些辅助编程的功能,比如前面提到的CodeSmart就是一种插件;甚至可以自已使用VB开发插件(本培训课程不涉及)。加载插件的方法是选择菜单”外接程序外接程序管理器”,就会弹出外接程序管理器,并列举出可用的插件,选择对应的插件,并勾选”在启动中加载、加载/卸载”,然后在菜单中,就会自动添加相应的功能项。VB缺省提供了一些

8、有用的插件,下面简单介绍一下:1) Source Code Control Add-In:这个是与Visual Source Safe源代码管理器相集成的的一个插件,加载之后,可以直接方便地在VB环境中进行源代码的管理和处理。关于Visual Source Safe的集成使用,后面章节再进行介绍。2) VB6 API Viewer:一个Windows标准API的查询和函数定义生成器,方便进行API编程。3) VB6类生成工具:辅助定义类,类的属性、方法、事件,设置类集合,并自动生成对应代码的工具;这个工具可能经常使用。4) VB6资源编辑器:当要把图片、字符串等资源附加到工程中,一并编译到文件

9、中时,需要使用到资源文件,这个工具可以对资源文件中的内容进行编辑。关于工程中资源的访问,后面章节再进行介绍。1.2 VB工程与文件类型:1.2.1 可开发的工程与类型:进入Visual Basic 6.0时,会提新建的工程类型。这里对我们常用的几种工程类型进行说明:1) 标准EXE:开发Windows 标准的exe可执行文件。2) ActiveX DLL:开发基于COM对象的DLL部件,通过开放公共的类接口来被其他程序所调用,其他程序可以是支持COM部件调用的任何语言编写的;该DLL部件可能是系统中的业务组件之一,也可能是一个公共功能的组件; 3) ActiveX EXE:与ActiveX D

10、LL类似,可通过开放公共的类接口来被其他程序所调用;但它是以exe的方式出现,因此相对于调用它的主程序来说,ActiveX EXE是在独立的进程中运行。4) ActiveX 控件:同样是基于COM对象的程序,但是以控件的形式提供让其他程序调用。1.2.2 工程文件组成:窗体只是VB工程中的一种文件,VB工程(Project,prj)中可能包含的比较常用的文件类型如下:1) 窗体:Form,用于与用户进行交互,文件扩展名为frm,文本格式,存放各个控件的属性,以及窗体中的代码;如果窗体中包含二进制数据(比如窗体中有一张图片),就会产生同名的frx文件。2) 模块:Modual,用于存放全局使用的

11、公共变量、公共函数,文件扩展名为bas。3) 类模块:Class,用于实现VB中的类,VB基于对象的编程就主要靠类模块实现,文件扩展名为cls。4) 用户控件:UserControl,实现自定义控件时它是主要的界面设计文件,特性与窗体文件类似,扩展名为ctl,对应的二进制同名文件为ctx。5) 属性页:PropertyPage,实现自定义控件时,对控件的属性进行设置的窗体,特性与窗体文件类似,扩展名为pag,对应的二进制同名文件为pagx。6) 资源文件:Resource,用于存放工程中使用的,额外的图片、字符串等数据,与工程一起编译。二进制格式,扩展名为res,一个工程中只能有一个资源文件。

12、以上文件的名称都可以在属性浏览器中进行设置,保存时的磁盘文件名缺省与所设置的文件名称相同,但也可以强制保存为其他磁盘文件名,不过这样是很不规范的行为,容易给管理造成混乱。1.2.3 工程属性与启动:1) 启动工程以及工程的启动对象:在一个工程组中(Visual Basic Project Group、vbg),可以包含多个工程(比如一个类型为标准exe的主工程,若干个类型为ActiveDLL的业务部件工程),但启动工程只有一个;在C/S开发模式中,启动工程就是exe工程,在工程浏览器中选中exe工程名,点击右键,选择”设置为启动”即可;当只有一个工程时,它缺省就是启动工程。设置了启动工程,该工

13、程启动的入口又有两种方式;一种是缺省以工程中添加的第一个窗体作为启动入口;另一种是以模块文件中的Main过程作为入口(模块中定义的Public Sub Main或者Sub Main),具体可以在工程属性的启动对象中设置;当要编写无界面交互的程序,或者在窗体显示之前先要作一些特殊处理的程序来说,Sub Main启动就非常有用。2) 工程属性:在工程浏览器中选中某个工程名,点击右键,选择”属性”即可弹出工程属性设置框。工程有一些比较重要的属性,下面分别介绍:1) “通用”页面:l 启动对象:前面已经说了,用于选择窗体启动,还是Sub Main启动。这个选项主要针对exe工程,对于dll、ocx等工

14、程,缺省为”(none)”。2) “生成”页面:l 版本号:设置当前工程部件所对应的版本号,每一位允许在0-9999之间设置;在产品化的开发中,版本号非常重要;该属性在代码中可以通过APP.Major、Minor、Revision读取。注:在Windows的文件属性中看到的版本号格式是4段的,如10.28.0.10,这里的对应设置为10.28.10。l 应用程序:标题用于设置对工程的简称,如”药房业务部件”,这个标题同时也是工程中调用MsgBox函数进行消息提示框的缺省标题,该属性在代码中可以通过APP.Title读取。图标用于设置工程编译后所生成文件的图标,它是通过选择工程中的某个窗体,而使

15、用该窗体的图标作为工程编译文件的图标。l 版本信息:设置一些附加的工程信息,一般是跟版权相关的信息,包括”产品名、公司名、合法版权、合法商标、文件描述”等,在代码中可通过APP.ProductName、CompanyName等属性访问。工程被编译成文件之后,在Windows的文件属性中也可以查看到这些信息。l 命令行参数:标准exe工程编译之后,由其他程序调用时可以传入命令行参数;如果在这里输入命令行参数,就是让程序运行时,模拟进行传入,以方便程序进行调试。3) “部件”页面:l 版本兼容:对于ActiveX EXE/DLL/控件这几种类型的工程,都是以COM类来开放接口,在编译生成文件时,与

16、以前的版本的文件存在一个接口兼容性问题,在接口类的定义、函数、参数等未发生变化,或者只发生了向下兼容性的变化时,应该选择按”二进制兼容”模式进行编译,并指定要进行兼容检查的磁盘文件。这个设置对于公用性质的部件特别重要,一旦不兼容了,使用公用部件的程序就会出错,除非也重新编译使用公用部件的程序。1.2.4 工程编译与发布:工程编译的方法比较简单,选择菜单”文件生成”,然后指定要生成到的路径和文件名即可,标准EXE、ActiveX DLL、ActiveX EXE、ActiveX 控件编译时分别生成的是exe、dll、exe、ocx文件。要发布所编译的文件,需要将它所依赖的其他文件一并包含,依赖的的

17、文件包括:1) Visual Basic 6.0的运行支持文件:msvbvm60.dll,放在系统目录System32下面。2) 工程所使用到的控件文件,包括自定义控件和第三方控件文件,如mscomct.ocx。3) 工程所使用到的其他DLL组件,包括自已编写的ActiveX DLL,以及第三方的公共组件等,如msscrrun.dll。4) 工程中所涉及到要读写的其他独立文件。注:VB在编译过程中,可能会生成lib、exp等一些附加文件,这些文件在编译之后可以删除。1.3 VB对象的基本概念:Visual Basic 6.0是基于对象的编程,不是完全面向对象的编程,对象的继承、多态等特性不能很

18、好地处理;但使用对象编程仍是VB中很重要的功能,在日常工作中大量使用。1.3.1 窗体对象:前面提到的窗体,VB中也是一种Form类的对象,它拥有属性、方法、事件,对Form,也完全可以按照类的构建方法,自已再增加属性、方法、事件;除了可以直接通过窗体名使用窗体外,也可以通过对象使用模式,定义基于窗体类的对象,实例化之后进行使用,如下面的代码:方法1:Form1.Show方法2:Dim objForm as Form1Set objForm = New Form1objForm.Show1.3.2 类模块与对象:VB中的类模块(Class)是专门用来定义类、实现对象处理的文件,定义使用一个对象

19、的步骤如下:1. 在工程中添加一个类模块,并命名,比如clsPerson2. 在类模块中添加属性、方法、事件,比如添加两个属性”Name、Sex”,添加两个方法”Eat、Sleep”,添加一个事件” GetIll”。3. 在窗体中定义一个对象变量,并实例化,如:Dim objPerson as clsPersonSet objPerson = New clsPerson或者Dim objPerson as New clsPerson4. 给该对象的属性赋值、读取,调用对象的方法。5. 使用对象的事件比较特殊,需要使用WithEvents关键字,并且需要将对象定义为窗体模块级的、单独使用New关

20、键字进行实例化:Private WithEvents mobjPerson as clsPersonPrivate Sub Form_Load()Set mobjPerson = New clsPersonEnd SubPrivate Sub mobjPerson_GetIll() End SubPrivate Sub Form_Unload(Cancel As Integer)Set mobjPerson = NothingEnd Sub也可以使用外接工具”类生成器实用工具”直观地定义类并自动生成相应代码;关于对象类型的进一步说明,将在后续章节进行。1.3.3 其他常用内置对象:VB中有一些

21、内置的对象,在日常开发工作中经常用到,下面进行简要介绍:1) Me:Me表示的是对象实例自身,在类模块内部使用,窗体也是一种类模块,因此在窗体中使用得非常多。比如在Form1内部的代码中,我们可以书写Me.Caption、Me.TextBox1.Text;通过Me关键字加”.”符号,在代码书写时可以快速找到要访问的属性、方法等;当然在类里面,对于自身的属性、方法等,也可以不加Me前缀直接书写访问。2) VB.APP:当前应用程序对象,通过APP对象(可以不加VB前缀),能够读到当前工程相关的信息,比如版本号(Major、Minor、Revision),产品名(ProductName)等。3)

22、VB.Clipboard:Windows剪贴板对象,可以读取剪贴板中的当前内容,也可以向剪贴板写入数据。4) VB.Screen:当前屏幕对象,可以读取屏幕的尺寸,精度,活动窗体等信息。5) VB.Printer:当前打印机对象,能够读取和设置打印机、纸张等信息,并可以打印机输出文本、图形等内容。关于打印机编程,在应用类产品中非常重要,后面的章节将对打印机编程作进一步讲解。除了VB内置的对象,Windows和一些第三方厂商也提供了一些公共的对象库,可以在VB中使用,比如ADO数据库操作对象,FileSystemObject文件操作对象等,要使用这些对象库的方法如下:1) 点击菜单”工程引用”,

23、将弹出”引用”对话框;对话框中列举了可以使用的公共对象库,这些对象库都是基于COM的ActiveX DLL/EXE,每个工程缺省引用了VB的一些内置库。2) 找到对应要使用对象库,比如Microsoft ActiveX Data Objects 2.6 Library,Microsoft Excel 12.0 Object Library。3) 在代码中定义公共库的对象,并实例化,比如Dim objSheet As New Excel.Worksheet,然后就可以使用对象的属性、方法;如果要使用事件,则需使用WithEvents关键字定义模块级对象。1.4 窗体与控件常用属性:以下表格中,列

24、举了窗体和控件最常见的属性,但不是说所有的控件都一定具有这些属性。属性名窗体控件类型说明Name字符名称,运行时只读Caption字符显示的文本标题Appearance枚举一般有3D、Flat几种选择,表示窗体或控件的外观是平面的还是立体的。Alignment枚举控件标题文本在内部的对齐方式AutoRedraw布尔缺省为False,当设置为True时,在窗体或者控件上面作图时,不用去处理Paint事件重绘。BoderStyle枚举窗体或控件的边框样式,一般有无边框、单线边框、3D边框等样式选择。BackColor数字背景色ForeColor数字字体颜色或者画笔颜色MaskColor数字当控件具

25、有背景图片时,对图片中MaskColor指定的颜色进行屏蔽透明。UseMaskColor布尔所指定的MaskColor颜色值是否生效。Font对象字体属性,包括字体名、字号、粗体、斜体等IMEMode枚举对于可输入类控件具有,表示控件激活时中文输入法的状态,一般设置为:No Operation(不处理),ON(打开),Off(关闭),Disabled(禁用)Picture对象背景图片Index数字控件的索引,使用控件数组时使用,否则缺省为空;Index=0,同一种控件、名称相同,Index不同的一组控件成为一个控件数组。TabIndex数字焦点顺序索引,TabIndex=0;按键盘上面的Tab

26、键时,焦点按TabIndex从小到大移动,按Shift+tab键反之。TabStop布尔缺省为False,当为True时,表示按键盘Tab键时,焦点不经过该控件;但该控件仍可获取焦点,仍可以强行用鼠标点击获取焦点。SelStart数字输入类控件具备,表示当前键盘光标所在输入内容中的位置,值为0-Len(内容)。SelLength数字输入类控件具备,表示当前键盘光标在输入内容中所选中的内容长度,如果没有选中内容,则为0。SelText文本输入类控件具备,表示当前键盘光标在输入内容中所选中的内容,如果没有选中内容,则为”。Tag字符用于存放额外的扩展数据,数据内容是自已定义的。ToolTipTex

27、t字符鼠标悬停提示的内容Enabled布尔窗体或者控件是否可用(不可用一般会置为灰色)Visible布尔窗体或者控件是否可见Left、TopWidth、Height数字窗体或者控件相对于它所在的容器的位置和尺寸;窗体的容器是屏幕。KeyPreview布尔缺省为False,当设置为True时,表示窗体上面的所有按键都先触发窗体的KeyPress事件,而不是先触发当前控件的KeyPress事件。ControlBox布尔表示窗体是否具有最大化、最小化、关闭按钮以及图标;在运行时只读。ShowInTaskBar布尔表示窗体运行时是否在Windows任务栏上面显示;在运行时只读。StartUpPosit

28、ion枚举设置窗体运行时缺省在屏幕上所出现的位置,在运行时只读。手动:根据在窗体布局中所调整的位置进行显示。所有者中心:显示在上层主窗体的中心。屏幕中心:显示在屏幕的中心。窗口缺省:不固定位置,由Windows系统控制。WindowState枚举窗体当前的尺寸状态,可设置为:Normal(正常),Minimized(最小化),Maxmized(最大化);设计时和运行时都可以设置。1.5 窗体与控件常用事件:1.5.1 窗体的使用及事件要显示一个窗体,有几种办法。1) 直接使用窗体的Show方法:Private Sub Form_Click()Form2.Show 0, MeEnd SubSho

29、w方法的第一个参数表示是否以模态方式显示,1表示模块,0表示非模态(缺省);第二个参数表示该窗体的主窗体,如果有主窗体,那么当主窗体最小化时,该窗体也会最小化,当主窗体关闭时,该窗体也会自动关闭;这两个参数都是可选参数。2) 定义窗体对象,再调用Show方法:窗体是VB中的一种类,前面直接调用Show方法的方式并没有通过创建窗体对象来处理,这样是VB在后台自动创建一个窗体对象实例,但这样这个窗体只能有一个实例存在,即只能同时打开一个;上例中,第2次点击Form1时,只是将已经显示出来的Form2激活而已。我们可以采用以下方法:Private Sub Form_Click()Dim objFor

30、m As New Form2 objForm.Show , MeEnd Sub这样每次点击Form1时,都是重新打开并显示一个新的Form2窗体。3) 先加载窗体,再显示出来:Private Sub Form_Click()Dim objForm As New Form2Load objForm objForm.Show 1, MeEnd Sub这个方法是先将窗体对象Load加载到内存(激活窗体的Load事件),但暂时不显示,这时可以作一些其他的处理,完成之后,再将窗体显示出来。4) 自已定义窗体的Show方法:窗体作为一种类,也可以定义其自已的方法,特别在需要传递额外的参数的时候,我们可以人

31、为定义一个Show方法,如:Form2的代码:Public Function ShowMe(frmParent as Object, byVal strName as String) as Boolean Me.Show 1,frmParentShowMe = TrueEnd FunctionForm1的代码:Private Sub Form_Click() Form2.ShowMe txtName.TextEnd Sub要关闭一个窗体,除了交互操作关闭外,在代码中可以使用以下方法:1) 使用Unload语句:如一般在窗体的退出按钮中书写:Unload Me2) 使用Hide方法:如Me.Hi

32、de;但Hide只是将窗体隐藏掉,并没有清除窗体实例;最后还是要使用Unload语句。从窗体从打开到关闭这个过程中,发生的事件以及顺序如下:1) Form_Initialize:窗体初始化2) Form_Load:窗体加载,这个时候窗体还没有显示出来;和Initialize相比,Load事件用得较多一些;Initialize中主要是进行一些比较低级和底层的初始化(如Windows API处理)。3) Form_Resize在窗体加载完成之后,没有显示出来之前,先要激活一次Resize事件,以根据设计时的布局调整窗体及控件。4) Form_Activate窗体激活;窗体第一次显示出来之前,必然会

33、激活一次Activate事件。后续使用过程中,也可能再激活该事件。5) Form_QueryUnload (Cancel As Integer, UnloadMode As Integer)窗体被界面交互关闭、或者调用Unoad代码时,会先激活该事件;该事件主要是查询窗体被关闭的原因,并且提供阻止关闭的手段。UnloadMode的参数含义如下:参数值数值含义vbFormControlMenu0用户从窗体上的“控件”菜单中选择“关闭”指令vbFormCode1Unload 语句被代码调用vbAppWindows2当前 Microsoft Windows 操作环境会话结束vbAppTaskMana

34、ger3Microsoft Windows 任务管理器正在关闭应用程序vbFormMDIForm4MDI 主窗体关闭导致当前MDI 子窗体被关闭vbFormOwner5窗体的主窗体被关闭导致当前窗体被关闭根据窗体被关闭的原因,可以将Cancel参数置为1,即可取消窗体的关闭。6) Form_Unload (Cancel As Integer)窗体对象被卸载的过程,与QueryUnload相比,Unload事件更多的被用来销毁跟窗体相关的一些变量、对象,而QueryUnload更多的用来作一些特殊判断处理。7) Form_Terminate窗体终止1.5.2 键盘事件窗体以及大部分的控件都具有以

35、下键盘事件响应:1) KeyDown/KeyUp(KeyCode As Integer, Shift As Integer)我在键盘上按一个键或者组组合键时(如Ctrl+F),会先后激活KeyDown/KeyUp事件,这两个事件能够截获绝大部分的键盘按键;每一个按键都有一个对应的按键代码,这些按键代码大部分也对应有VB常量,如vbKeyEscape,vbKeySpace,vbKeyA;Shift则指出组合键的情况,如vbCtrlMask、vbAltMask、vbShiftMask;如果是几种组合键同时按下,则是这几个值相加。2) KeyPress(KeyAscii As Integer)当按键

36、时,KeyPress事件在KeyDown之后、KeyUp之激活;KeyPress事件主要用于捕获一般的字符按键,对于控制键和组合键则适合使用KeyDown事件;因此KeyAscii事件参数主要是所按下字符的ASCII码,当然一些特殊按键也能被KeyPress事件捕获,比如BackSpace键,它的ASCII码是8。与KeyDown事件所不同的是,在KeyPress事件中,可以通过将事件参数KeyAscii = 0来使按键无效,而KeyDown事件中的KeyCode参数则没有这个效果。另外当窗体的KeyPreview属性为真时,如果窗体中当前焦点在某个控件上面,这时当键盘按下时,是先激活窗体的键

37、盘事件,再激活该控件的键盘事件;反之则只激活该控件的键盘事件。1.5.3 鼠标事件窗体以及大部分的控件都具有以下鼠标事件响应1) MouseDown/MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)当鼠标按下或者弹起时激活;Button表示具体按的哪个键,1表示左键、1表示右键、4表示中间按钮;Shift表示按下鼠标时,同时按下了键盘的组合键,具体与键盘KeyDown事相同;X、Y则表示当前的鼠标位置,注意这个鼠标位置是相对于当前窗体或者控件的左上角的。2) MouseMove(Button As In

38、teger, Shift As Integer, X As Single, Y As Single)当鼠标在窗体或者控件上面移动时激活,各事件参数与MouseDown事件相同。3) Click:鼠标单击事件,没有事件参数。当单击鼠标时,该事件在MouseDown/MouseUp之后激活。4) DblClick:鼠标双击事件,没有事件参数。当双击鼠标时,该事件在MouseDown/MouseUp/Click之后激活。1.5.4 编辑事件对于可进行数据的编辑的控件(如TextBox、ComboBox等),一般都具有以下事件:1) Change当编辑控件中的内容发生变化时激活;内容发生变化可能是因为

39、键盘输入,也可能是因为代码直接赋值,都将激活Change事件。2) Validate(Cancel As Boolean)在界面交互过程中,当编辑控件中的内容输入完成,转移焦点时激活;该事件的主要目的是对所输入内容的正确性进行校验,如果检查发现输入内容不符合要求,可以通过将事情参数Cancel =1来阻止进行焦点转移。注:转移焦点也会激活LostFocus事件,但所不同的是LostFocus是强制性的,不能阻止这个过程。1.5.5 拖放事件窗体以及大部分的控件都支持拖动的处理,利用拖动的事件、方法我们可以实现鼠标拖动应用。拖动的启动有两种方式:1) 手动:这个时候窗体或者控件的DragMode

40、= 0 (VbManual,缺省),需要在代码中调用Drag方法进行启动:Drag Action= vbBeginDrag(开始拖动=1)、vbEndDrag(结束拖动=2)、vbCancel(取消拖动=0)2) 自动:这个时候窗体或者控件的DragMode=1(VbAutomatic),这时不需要使用代码,直接使用鼠标点击控件进行拖动即可。在拖动的过程中,会激活下列事件:1) DragOver(Source As Control, X As Single, Y As Single, State As Integer)当拖动对象经过某个控件或者窗体时,这个控件或者窗体会触发DragOver事件

41、:Source:表示被拖动的来源控件X/Y:被拖动的控件在当前控件或者窗体中的坐标State:被拖动的控件在当前控件或者窗体中的状态,分别有0=进入,1=离开,2=经过2) DragDrop(Source As Control, X As Single, Y As Single)当拖动对象在某个控件或者窗体上面完成拖动(松开鼠标按钮或者调用Drag方法),会触发该控件或者窗体的DragDrop事件,事件参数含义同DragOver。1.5.6 其他事件:1) GotFocus/ LostFocus无事件参数;当控件获取到键盘输入焦点,或者失去焦点时激活。1.6 常用键盘快捷键:下表列举了在实际工

42、作中最常用的,Visual Basic 6.0 IDE环境中的快捷键,经常使用快捷键,可以提高工作效率;当这些快捷键也可以通过菜单功能进行执行:功能快捷键保存当前文件Ctrl+S运行程序F5全编译执行Ctrl+F5切换上一个/下一个函数定义Ctrl+/定位到当前光标所在函数的函数定义处Shift+F2显示当前光标所在函数的函数定义提示Ctrl+I弹出当前光标所在对象的属性、方法列表,类似输入”.”操作符Ctrl+J查找/查找下一个Ctrl+F,F3替换Ctrl+H光标定位到当前代码文件的最前面/后面Ctrl+Home/End定位到行最前/第一个字符处Home按整行选择代码Shift+/按关键字

43、选择代码Ctrl+Shift+中断程序进入调试状态Ctrl+Break将当前代码行设置为断点(包括在运行时)F9从当前断点处逐条语句执行(要进入子函数)F8从当前断点处逐个过程执行Shift+F8将下一条执行语句从当前断点处跳转到当前光标所在的代码行Ctrl+F92 Visual Basic 编程基础2.1 简单数据类型2.1.1 基本数据类型1. 数值类型:数值型数据可分为以下几类。 1) Integer(整型) 整型数是不带小数点和指数符号的数,每个整型数据占用 2个字节(16 位)的存储空间,其类型声明符为“%”,其取值范围为-3276832767之间的整数。 2) Long(长整型)

44、长整型数也是不带小数点和指数符号的数,每个长整型的数据占用 4 个字节(32 位)的存储空间,其类型声明符为“&”,其取值范围为-21474836482147483647之间的整数。 3) Single(单精度浮点型) 单精度浮点型数是带小数的数值,通常以指数形式(科学记数法)来表示, 以“E”或“e”表示指数部分。每个单精度浮点型数据占 4 个字节的存储空间,可以精确到7 位,其正数的取值范围为1.401298E-453.402823E+38,其负数的取值范围为-3.402823E+38-1.401298E-45,其类型声明符为“!”。4) Double(双精度浮点型) 双精度浮点型数也是带

45、有小数的数值,通常也以指数形式(科学记数法)表示,以“D”或“d”表示指数部分,双精度浮点型数占 8 个字节的存储空间,可以精确到 1516 位,其正数的取值范围为 4.94065645841247E-3241.79769313486232E+308,其负数的取值范围为-1.79769313486232E+308-4.94065645841247E-324,其类型声明符为“#”。 5) Currency(货币型) 货币类型是为计算货币而设置的数据类型,它也是一种固定小数点位置的数据类型,占用 8 个字节的存储空间,其小数点左边有 15位数字,右边有 4 位数字,其取值范围为-922337203

46、685477.5808922337203685477.5807,其类型声明符为“”。 6) Byte(字节型) 字节型数据用于存储二进制数据,占用 1 个字节的存储空间,其取值范围为0255。注:关于类型声明符,在随后的常量与变量章节中将涉及到它的具体使用方法。2. 字符类型(String):字符串类型数据用来定义一个字符序列,由 ASCII 字符组成,包括标准的 ASCII字符和扩展 ASCII 字符,其类型声明符为“$”;在 Visual Basic 中,字符串必须放在双引号内,其中长度为空的字符串称为空串,例如ABC、 (空串)。字符串型数据分为两种:一种为变长字符串,它能够包含字符的个数是可变的,随着对字符串

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 职业教育

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服