版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章对象及其操作对象窗体控件2.4 控件的画法和基本操作2.8工作环境设置与程序调试2.5 事件驱动2.7
VB应用程序的结构与工作方式2.6
VB可视化编程的基本步骤2.1
对象2.1.1
Visual
BASIC对象的概念对象是具有特殊属性(数据)的行为方式(方法)的实体。在VB环境中所涉及到的窗体、控件、部件和菜单项等均为对象,程序员既可以利用控件来创建对象,也可以设计自己的对象。在窗体上创建对象时,可以单击工具箱上要创建的对象图标,然后在窗体上合适位置画出对象来。初步建立的对象只是一个“空对象”,其操作需要通过对该对象有关的属性、事件和方法进行描述。除了通过窗体、控件、部件和菜单项等创建控件对象外,VB还提供了系统对象,如打印机(Printer)、剪贴板(Clipboard)和屏幕(Screen)等。1.对象的属性对象的属性可以看作是它的一些性质,其中包括可见的和不可见的。可见的属性
如对象的大小、形状和颜色等;不可见的
属性如对象的生存期等。2.1.2
对象的属性、事件和方法属性窗口2.对象的事件事件就是对象上所发生的事情,是指对象所接受的某些外部影响。事件是预先定义好的、能够被对象识别的动作。事件过程:可以通过一段程序代码来响应某个具体事件所执行的操作,这段程序代码即为事件过程。对象的事件与方法3.对象的方法方法就是要执行的动作,是系统提供的一种特殊函数或过程,用于完成某种特定功能而不能响应某个事件。如对象打印方法(Print),显示窗体方法(Show),移动方法(Move)等。对象的方法是固有的,在开发应用程序时,可以对编程中使用到的对象的方法进行调用,但是不能对它们进行编辑和修改。开发应用程序时,对象的方法都是在程序中编写代码进行调用的。方法只在程序代码中使用。方法的操作与过程和函数的操作相同,但要注意方法是特定对象的一部分,正如属性和事件是对象的一部分一样2.1.3
对象属性的设置两种方法:设计阶段,在属性窗口设置(直接键入、选择、对话框)*选择对象,被选择的对象的边框出现8个小方块,处于“活动”状态;*打开属性窗口,设置属性
其中属性窗口由4部分组成:*对象名称框:用于选择要设置属性的对象名称;*属性显示方式选项卡:字母或分类显示对象属性;*属性列表:左列显示属性名称,右列显示属性的系统默认值;*属性解释:显示选中属性的名称和功能说明;在属性窗口设置属性的方法有:*直接键入新的属性值;*选择输入属性值;*利用对话框设置;在程序代码中利用语句进行设置2.2
窗体1.窗体的主要属性2.窗体主要事件3.主要方法创建窗体:工程——添加窗体——新建——打开1.窗体的主要属性(1)Caption属性、(2)MaxButton和MinButton属性、(3)ControlBox属性、(4)Icon属性、(5)WindowState属性2.窗体主要事件·
常用的窗体事件有单击(Click)、双击(DblClick)、装入(Load)、卸载(Unload)、活动(Activate)、非活动(Deactivate)、绘画(Paint)等。3.主要方法窗体上常用的方法有Print、Cls、Move等。2.3
控件2.3.1 Visual
BASIC的控件种类2.3.2
对象的基本属性2.3.1
Visual
BASIC的控件种类1.内部控件2.ActiveX控件3.可插入对象1.内部控件内部控件又称标准控件,在默认状态下工具箱中显示的控件都是内部控件,这些控件由VisualBASIC的EXE文件提供,不能进行删除和添加操
作。命令按钮、文本框和复选框等都属于内部控件。2.ActiveX控件
为了方便用户设计功能强大的复杂应用程序,
VB和第三开发商提供了大量的ActiveX控件。
ActiveX控件是四种ActiveX部件之一。ActiveX部件是可以重复使用的编程代码和数据,是由
ActiveX技术创建的一个或多个对象所组成的、以.ocx为扩展名的独立文件。3.可插入对象
可插入对象是Windows应用程序的对象,如
Microsoft
Word文档、AutoCAD
Drawing、Excel、Flash等。可以将可插入对象添加到工具箱中,象使用标准控件一样使用。内部控件内部控件与ActiveX控件表2-1
Visual
Basic内部控件的作用编号名
称作
用1Pointer(指针)这并不是一个控件,但只有选定指针后,才能改变窗体的位置和大小2PictureBox(图片框)用于显示图像(包括图片和文本),可以装入位图、图标以及.wmf、,jpg、..gif等各种图形格式的文件,也可作为其他控件的载体,即父控件3Label(标签)用来显示文本信息,但不能输入文本4TextBox(文本框)既可输入也可输出文本,并可对文本进行编辑5Frame(框架)组合相关的对象,将性质相同的控件集中一起6CommandButton(命令按钮)用于向VisualBASIC应用程序发出命令,单击该按钮将执行指定的操作7CheckBox(复选框)用于多重选择,也称检查框8OptionButton(单选按钮)用于表示单选的开关状态,也称录音机按钮9ComboBox(组合框)创建组合框或下拉列表框对象,用户可以从列表中选择一项或人工输入一个值10ListBox(列表框)用于显示可供用户选择的固定列表编号名
称作
用11HscrollBox(水平滚动条)用于表示在一定范围内的数值选择。常放在列表框或文本框中用来浏览信息,或用来设置数值输入12VscrollBox(垂直滚动条)用于表示在一定范围内的数值选择。常放在列表框或文本框中用来浏览信息,或用来设置数值输入13Timer(计时器)在给定的时间间隔内捕捉计时器事件,此控件在运行时不可见14DriveListBox(驱动器列表框)显示当前系统中可用的驱动器列表供用户选择15DirListBox(目录列表框)显示当前驱动器磁盘上目录列表供用户选择16FileListBox(文件列表框)显示当前目录中的文件名列表供用户选择17Shape(形状)设计时用于在窗体中绘制矩形、圆等几何图形18Line(直线)设计时在窗体中绘制直线19Image(图像框)显示一个位图式图像,可作为背景或装饰的图像元素,单击时其动作类似于命令按钮20Data(数据)用来连接数据库,并可在窗体的其他控件中显示数据库信息21OLE
Container(OLE容器)用于对象的连接与嵌入2.3.2对象的基本属性1.Name属性
2.Caption属性
3.Enabled属性
4.Visible属性
5.Font属性6.Height、Width、Top和Left属性
7.颜色属性8.背景样式属性(BackStyle)9.边框样式属性(BorderStyle
)10.MousePointer属性11.MouseIcon属性12.Alignment属性13.AutoSize属性14.WordWrap属性15.TabIndex属性16.控件的默认值1.Name属性用于标识窗体、控件、或数据访问对象的名字。在运行时是只读的。新控件的缺省名字由控件默认名称加上一个唯一的整数组成。2.Caption属性用于标识一个对象活动窗口标题的字符串。
可以使用Caption属性赋予控件一个访问键。在标题中,在想要指定为访问键的字符前加一个(&)符号。该字符就带有一个下划线。同时按下ALT键和带下划线的字符就可把焦点移动到那个控件上。为了在标题中加入一个(&)符号而不是创建访问键,需要在标题中加入两个即(&&)符号。这样,在标题中只有单个(&)符号被显示而没有带下划线的字符。3.Enabled属性
用来确定一个窗体或控件是否能够对用户产生的事件作出反应。其值为逻辑值True或False。Enabled属性允许在运行时使窗体和控件成为有效或无效。例如,可以使对象成为不能用于应用程序的当前状态的无效状态。也可以使之纯粹用来显示,比如使文本框控件无效,从而提供只读的文本信息。4.Visible属性为指定对象设置为可见或隐藏的值,其值为逻辑值True或False。5.Font属性
为指定对象上显示的文本设置字体属性,包括字体(FontName)、字号(FontSize)、字形(FontBold、FontItalic)等。6.Height、Width、Top和Left属性
在窗体上设计控件时,VB提供了默认的坐标系统。窗体左上角为坐标原点,上边框为坐标横轴,左
边框为坐标纵轴,坐标单位为缇(twip),1
twip=1/20点=1/1440英寸=1/567厘米。
Height和Width用来决定控件的高度和宽度,Top和Left属性决定了控件在窗体中的位置,Top属性决定控件到窗体顶部的距离,Left属性决定了控件到窗体左边框的距离。对窗体而言,Top属性决定窗体到屏幕顶部的距离,Left属性决定了窗体到屏幕左边的距离。7.颜色属性
(1)背景颜色属性(BackColor):用于设置控件正文之外的颜色。如果在绘图方法进行绘图之后
改变BackColor属性,则已有的图形将会被新的背景颜色所覆盖。用户可以在调色板中选择颜色。
(2)前景颜色属性(ForeColor):用于设置控件的正文颜色。改变ForeColor属性不影响已创建的文本或图形。用户可以在调色板中选择颜色。
(3)边框颜色属性(BorderColor):返回或设置对象的边框颜色。
(4)填充颜色属性(FillColor):用来设置填充形状的颜色,也可以用来为用Circle方法创建的圆和用Line方法创建的方框设置填充颜色。8.背景样式属性(BackStyle)
它指定标签控件或形状控件的背景是透明的还是非透明的。
0:透明,在控件后的背景色和任何图片都是可见的。
1:缺省值,非透明,用控件的BackColor属性设置值填充该控件,并隐藏该控件后面的所有颜色和图片。9.边框样式属性(BorderStyle
)
用来设置对象的边框样式。对Form对象和Textbox控件在运行时是只读的。Form对象的BorderStyle属性设置值如下0:无(没有边框或与边框相关的元素)。
1:固定单边框。可以包含控制菜单框,标题栏,“最大化”按钮,和“最小化”按钮。只有使用最大化和最小化按钮才能改变大小。
2:(缺省值)可调整的边框。可以使用设置值1列出的任何可选边框元素重新改变尺寸。
3:固定对话框。可以包含控制菜单框和标题栏,不能包含最大化和最小化按钮,不能改变尺寸。
4:固定工具窗口。不能改变尺寸。显示关闭按钮并用缩小的字体显示标题栏。窗体在Windows
95的任务条中不显示。
5:可变尺寸工具窗口。可变大小。显示关闭按钮并用缩小的字体显示标题栏。窗体在Windows
95的任务条中不显示10.MousePointer属性
用来设置在运行时,当鼠标移动到对象的一个特定部分时,被显示的鼠标指针的类型。设置值的范围一般在
0~15之间。下面是几种常用的设置值:0:缺省值,形状由对象决定。1:箭头。2:十字线。3:I型11:沙漏(表示等待状态)。99:通过MouseIcon属性所指定的自定义图标。11.MouseIcon属性
用来设置自定义的鼠标图标,图标文件类型为.ico或.cur,图标文件在安装目录的Graphics文件夹中。该属性在
MousePointer属性值为99时有效。12.Alignment属性
该属性决定CheckBox或OptionButton控件、控件中的文本的对齐方式。对CheckBox、OptionButton和TextBox控件在运行时为只读。
对CheckBox和OptionButton控件,Alignment属性的设置值为:0:(缺省值)文本是左对齐的,控件是右对齐的。1:文本右对齐,控件左对齐。对Label和TextBox控件,Alignment属性的设置值为:0:(缺省值)文本左对齐。1:文本右对齐2:文本居中13.AutoSize属性
该属性决定控件是否具有自动改变大小以显示其全部内容的功能。其设置值为:True:自动改变控件大小以显示全部内容。
False:(缺省值)保持控件大小不变。超出控件区域的内容被裁剪掉。14.WordWrap属性
该属性用来指示一个AutoSize属性设置为True的Label控件,是否要进行水平或垂直展开以适合其Caption属性中指定的文本的要求。其设置值为:
True:文本卷绕;Label控件垂直展开或缩短,以使其与文本和字体大小相适。水平大小不变。
False:(缺省值)文本不卷绕;Label控件水平地展开或缩短以使其与文本的长度相适,并且垂直地展开或缩短以使其与字体的大小和文本的行数相适应。15.TabIndex属性该属性设置父窗体中大部分对象在按tab键时获得焦点的次序。
在缺省情况下,除Menu、Timer、Data、Image、Line和Shape控件外,在窗体上画控件时VB会分配一个tab键顺序。运行时,不可见或无效的控件以及不能接收焦点的控件(Frame和Label控件)仍保持在tab键顺序中,但在切换时要跳过这些控件。
每个新控件都放在tab键顺序的最后。如果改变控件的TabIndex属性值来调整缺省tab键顺序,Visual
Basic会自动对其它控件的
TabIndex属性重新编号,以反映出插入和删除操作的影响。可以在设计时用属性窗口或在运行时用代码来作改变TabIndex属性。
删除一个或多个控件时,可以用Undo命令恢复控件以及除
TabIndex之外所有的属性,TabIndex是不能恢复的。用Undo命令时TabIndex被重放在tab键顺序的结尾。16.控件的默认值
控件的默认值是指在运行时可以直接用某个控件的控件名来改变控件某个的属性值,该属性称为该控件的默认属性。文本框、标签、命令按钮、图形框与图片框、单选按钮、复选框的默认属性依次为Text、Caption、Caption、Picture、Value、Value。因此“Text1.Text="123"”等价于“Text1="123"”。
“Command1.Command="Start"”等价于
“Command1="Start"”。2.4.1控件的画法单击工具箱控件图标按钮,在窗体编辑区拖动;双击工具箱控件图标按钮,在窗体中央创建;按住Ctrl,单击,松开Ctrl,在窗体编辑区拖动,并可以连续画出多个控件。2.4.2控件的基本操作1.缩放与移动(Shift+方向箭头:缩放;Ctrl+方向箭头:移动)2.复制与删除3.选择多个控件(Ctrl、Shift、矩形框)2.4
控件的画法和基本操作事件驱动:该方法将代码和数据集中到一个个独立的对象中,使用对象来完成某项任务的子任务,多个对象配合共同完成特定的任务典型执行步骤:启动应用程序,加载和显示窗体;等待接收事件;事件触发,对象响应,执行事件过程;等待下次事件。2.5
事件驱动2.6
VB可视化编程的基本步骤
Visual
BASIC可视化编程的方法采用的是面向对象的方法,一般来说只需要编写简单的代码来传递一些消息即可。其一般编程步骤为:(1)设计界面:包括建立窗体和利用控件在窗体上创建各种对象。(2)设置对象的属性:为建立的窗体和控件等对象设置属性。(3)编写事件驱动代码:为具体的过程或事件编写必要的代码。(4)程序运行与调试(5)保存文件与编译
图2-8所示为某网上银行的用户登录界面,输入正确的用户名和用户密码后,即可以进一步地打开其他窗口进行操作。下面以此为例说明建立应用程序的基本步骤。本例所需控件见表2-2。表2-2用户登录界面控件控件名称控件值说
明Label1请勿在网吧等公共场所使用本系统控件背景为透明的,字体为红色Label2用户名Label3用户密码Text1用于输入用户名Text2用于输入用户密码Command1登录用于登录操作界面Command2退出用于退出系统Command3用户管理用于打开管理系统界面Command4通讯设置用于打开通讯系统设置界面新建工程实例2.6.1新建工程
使用VB开发的应用程序或其它程序都称为工程,选择工程类型是开发的基础。在VB启动后,默认状态下主界面上有“新建工程”对话框。在“新建”选项中可以选择新建工程的类型,初学者一般选择“标准EXE”。如果没有显示对话框,可以在“文件”菜单中选择“新建工程”子菜单打开该对话框。
进入VB的集成开发环境后,屏幕上将显示一个默认名为
Form1(命名为“用户登录”)的窗口,可以在此窗口下设计用户登录界面。新建工程后,就可以向窗体添加控件。如添加标签控件具体步骤为:单击工具箱中的标签框图标,该图标反白显示;把鼠标指针移到窗体上,此时鼠标指针变为“+”号;把“+”号移到窗体的适当位置,按下鼠标左键,在窗体上画出适当大小的矩形框,矩形框中将显示此标签的默认标题(Caption)“Label1”,其默认名称也为“Label1”。另外,可以通过复制的方法添加控件。创建控件数组2.6.2添加控件用户界面上每一个对象的创建和属性设置可以同时进行,也可以添加其他对象后再设置属性值。下面是Label1标签控件的属性设置过程。属性标题属性设置前景色属性2.6.3设置控件属性(1)单击Label1标签控件;
(2)在属性窗口的属性列表框中单击标题属性(Caption),将其值改为“请勿在网吧等公共场所使用本系统”;
(3)单击背景样式属性(BackStyle),在属性值右边出现下拉按钮,单击下拉按钮,从中选择属性值0。
(4)单击前景色属性(ForeColor),在属性值右边出现下拉按钮,单击下拉按钮,从弹出的调色板窗口选择“红色”;
(5)单击字体属性(Font)右边的“”按钮,从弹出的字体对话框中选择相应的字体类型、字体样式和字体大小等。
对象的位置属性可以通过拖动对象直观地进行调整,也可以在属性列表框中输入具体的值。如要求程序运行时窗体“用户登录”处于屏幕中心,可将它们的StartUpPosition属性设置为“2-屏幕中心”,要求程序运行时窗口处于最大化,可将它们的
“WindowState”值设置为“2-maximized”。2.6.4编写代码
过程代码是针对具体的对象事件编写的。这里,当单击
“登录”按钮,将显示“网上银行用户操作界面”窗体,同时隐藏“用户登录”窗体。1.打开代码窗口选中“用户登录”窗体,在资源管理器窗口中单击“查看代码”,打开代码窗口。双击“登录”按钮直接打开该对象的代码窗口。打开对象的代码窗口后,在事件下拉列表框中选择相应的事件,如“click(单击)”。2.编写代码2.6.5工程的保存、装入、运行及文件删除工程的保存
应用程序设计过程中,要随时注意保存所作工作。单击“文件”菜单中的“保存工程组”或单击工具栏上的“保存工程”按钮,系统会自动保存所有文件。
如果是第一次保存工程,或者选择了“文件”菜单中的“工程另存为”项,集成环境会依次几个弹出“文件另存为”对话框,可以根据图中
“保存类型”框中文件后缀得知将要保存的文件的类型,首先保存的是工程中各窗体文件、模块文件等,最后提示保存工程文件。本例窗体文件名为frmbank1,工程文件名为netbank。
一个工程可能包括多个窗体文件、模块文件等,不同的工程可以引用相同的文件,因而在一个工程中对某个文件的修改会影响到引用该文件的
其他工程,为了避免这种影响,可以在资源管理器中选定该文件的图标,如窗体文件frmbank1.frm,然后单击“文件”菜单下的“frmbank1.frm另存为”命令,将该文件换名保存(或换文件夹保存)。2.工程的装入在VB的集成开发环境下,可以随时装入工程。装入工程时,只要装入工程文件(.vbp),其他文件会自动装入。如要装入“netbank”工程,可单击“文件”菜单中的“打开工程”项,打开“打开工程”对话框,单击“最新”选项卡显示最近创建的工程,双击“netbank”文件名即可。如果在“最新”选项卡和“现存”选项卡中都不能找到所需工程,则可以在其他文件夹中浏览。“文件另存为”对话框工程的装载3.运行工程
运行工程有两种方式,一种是解释运行方式,一种是生成可执行文件(EXE文件)。(1)解释运行
解释运行是在解释运行模式下运行程序,在此方式下,解释器每读完一行代码,就将其转换为机器代码(微处理器指令),然后执行这些命令。(2)编译运行
编译运行模式不属于VB模式,而是应用程序运行模式。VB在对程序进行编译时,将每个语句解释并转换为微处理指令,将这些指令保存在可执行文件(EXE文件)中,在程序执行时,没有必要再解释源语句,运行速度快。“工程属性”对话框之“编译”选项卡在“编译”选项卡中进行设置后,就可以编译工程。编译工程是使工程能够在Windows环境下运行的必要步骤。如编译netbank工程的步骤为:(1)单击“文件”菜单中的“生成netbank.exe”项,显示如图所示对话框;在“生成工程”对话框中,“文件名”框为生成可执行文件的名字,默认为与工程文件名相同,也可以键入新的文件名。单击“确定”按钮,完成可执行文件的生成。生成的可执行文件同其他Windows应用程序一样,可在Windows环境下直接运行。“生成工程”对话框4.文件删除可以在工程资源管理器窗口选择文件,然后单击右键,选择快捷菜单中的“移去…”命令从工程中删除该文件,但这种操作只是解除了移去的文件与当前工程的联系,文件仍然保留在磁盘上。如果直接在磁盘上删除工程中的某个文件,,在打开该工程时,将会显示文件丢失的出错信息,单击图中的“是”将继续加载该工程,但不会显示删除的窗体。如果在磁盘上对工程中的某个文件重新命名,也会出现相同的出错信息。可以有两个方法解决这一问题。一是用文本编辑器(如记事本)打开工程文件(在磁盘上选择“netbank.vbp”,单击右键,选择“打开方式”,打开“打开方式”对话框,选择“记事本”),将“Form=frmbank1.frm”改为“Form=frmbanktemp.frm”即可。对不到窗体文件时显示的出错信息在文本编辑器中修改工程文件2.7
Visual
BASIC应用程序的结构与工作方式2.7.1
Visual
BASIC应用程序的结构一个VisualBASIC应用程序(或者说一个工程)通常由三类模块组成:窗体模块、标准模块和类模块。 1.窗体模块由于
Visual
Basic应用程序是基于对象的,所以应用程序的代码结构就是该程序在屏幕上物理表示的模型。根据定义,对象包含数据和代码。窗体是由其属性规定的,这些属性定义了窗体的外观和内在特性。每个应用程序可以包含一个或多个窗体模块(文件扩展名为
.frm
),每个窗体模块都有一个作为用户界面的窗体和执行具体操作的代码窗口。每个窗体上可以包含若干个控件,每个控件都可以有其相应的事件过程集。此外每个窗体模块还可以包含能够被窗体中任何事件过程调用的2.标准模块
标准模块(文件扩展名为.bas)完全由与特定窗体或控件无关的代码组成的模块。如果一个过程用来响应几个
不同对象中的事件,则可将这个过程放在标准模块中,
而没有必要在每一个对象的事件过程中重复相同的代码。在标准模块中可以声明能够被任何模块使用的全局变量,可以定义函数过程或子程序过程。3.类模块类模块(文件扩展名为.cls
)用来创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块既包含代码又包含数据,可视为没有物理表示的控件。扩展名说
明.vbp跟踪所有部件的工程文件.frm窗体模块文件,包含窗体及其控件的正文描述,包括它们的属性设置,也含有窗体级的常数、变量和外部过程(事件过程和一般过程)的声明.frx每个窗体的二进制数据文件,它含有窗体上控件的属性数据。对含有二进制属性(例如图片或图标)的任何.frm文件都是不可编辑的,这些文件都是自动产生的.cls类模块文件,与窗体模块类似,但没有可见的用户界面。可以使用类模块创建含有方法和属性代码的自己的对象。该文件是可选项.bas标准模块文件,可以包含类型、常数、变量、外部过程和公共过程的公共的或模块级的声明。该文件是可选项.ocxActiveX控件文件,它可以被添加到工具箱中并在窗体里使用。当安装VB时,VB包含有控件的那些
文件被复制到一个公共目录(Windows95/98/2000下面的子目录\windows\system中)。可以从多种途径取得附加的ActiveX控件。也可以使用VB专业版和企业版创建自己的控件。该文件是可选项.res资源文件,包含着无需重新编辑代码便可以改变的位图、字符串和其他数据。例如,如果计划用一种外语将应用程序本地化,可以将用户界面的全部正文串和位图存放在资源文件里,然后将资源文件本地化,而不是将整个应用程序本地化。一个工程最多包含一个资源文件。该文件是可选项表2-3一个工程的全部文件2.7.2
Visual
BASIC应用程序的工作方式Windows的工作方式
Visual
Basic是Windows开发语言,与
Windows环境保持一定的相似性。Windows的工作机制,简言之就是三个关键的概念:窗口、事件和消息。
Microsoft
Windows操作系统通过给每一个窗口指定一个唯一的标识号(窗口句柄或
hWnd)来管理所有的窗口。操作系统连续地监视每一个窗口的活动或事件的信号。事件可以通过诸如单击鼠标或按下按键的操作而产生,也可以通过程序的控制而产生,甚至可以由另一个窗口的操作而产生。
每发生一次事件,将引发一条消息发送至操作系统。操作系统处理该消息并广播给其它窗口。然后,每一个窗口才
能根据自身处理该条消息的指令而采取适当的操作(例如,当窗口解除了其它窗口的覆盖时,重显自身窗口)。选择“工具|选项”菜单,打开如图所示的“选项”对话框,对各项功能进行设置。在“选项”对话框中有六个选项卡,用户可以根据需要对编辑器、编辑器格式、环境等进行设置。“选项”对话框之“编辑器”选项卡2.8工作环境设置与程序调试1.“编辑器”选项卡其作用是指定代码窗口和工程窗口设置值。(1)“代码设置”区
1)“自动语法检测”复选框选中该复选框后,用户如果完成一行程序代码的输入,转到其他行时,VB会自动对此行程序代码进行语法检查,一旦出现语法错误,就会弹出一个消息框,提示用户出错信息,如果没有选中该复选框,出现语法错误时,将不显示消息框,但还是会将该行代码以红色字体显示,以此提示用户。2)“要求变量声明”复选框选中该复选框后,用户在新的工程进入代码编辑器时,VB会自动在模块声明段添加语句:Option
Explicit2.8.1工作环境设置语法错误提示3)“自动列出成员”复选框选中该复选框后,用户如果在代码编辑器中输入控件的名称并输入句点后,VB会自动弹出该控件在运行模式下可用的属性和方法,如图所示。此时可以选择某个属性或方法后,再按回车键或双击该项目将其插人到当前位置。“自动显示快速信息”复选框“自动显示数据提示”复选框“自动缩进”复选框“Tab宽度”文本框自动列出成员自动显示快速信息(2)“窗口设置”区1)“编辑时可施放文本”复选框选中该复选框后,如果选中—段文本,就可以用鼠标拖动到其他位置。2)“缺省为整个模块查阅”复选框选中该复选框后,可在代码编辑窗口中看到所有模块的程序代码。3)“过程分隔符”复选框在选择了“缺省为整个模块查阅”复选框的前提下,选择“过程分隔线”复选框才有效,此时代码窗口将尽可能多地显示过程代码,否则代码窗口只会显示一个过程的代码。2.“通用”选项卡用来为当前的VB工程指定设置值、错误处理以及编译设置值。“选项”对话框之“通用”选项卡“窗体网格设置”区“错误捕获”区“编译”区3.“环境”选项卡“环境”选项卡如图所示,包含三个区域。“启动Visual
Basic时”区“启动程序时”区“显示模块”区“选项”对话框之“环境”选项卡运用调试功能,如设置断点、观察变量和过程跟踪等,可以方便地发现程序中的错误。1.错误类型编辑时错误编译时错误编译错误提示运行时错误逻辑错误2.8.2程序调试2.调试和排错VisualBasic的调试支持包括:断点、中断表达式、监视表达式、通过代码一次经过一个语句或一个过程、显示变量和属性的值。VisualBasic还包括专门的调试功能,比如可在运行过程中进行编辑、设置下一个执行语句以及在应用程序处于中
断模式时进行过程测试等。表2-4列出了VB的常用调试工具。调试工具目的断点在“代码”窗口中确定一行,Visual
Basic在该行终止应用程序的执行。跟踪执行应用程序代码的下一个可执行行,并跟踪到过程中。单步执行应用程序代码的下一个可执行行,但不跟踪到过程中。单步出执行当前过程的其它部分,并在调用过程的下一行处中断执行。“本地”窗口显示局部变量的当前值。“立即”窗口当应用程序处于中断模式时,允许执行代码或查询值。“监视”窗口显示选定表达式的值。快速监视当应用程序处于中断模式时,列出表达式的当前值。调用堆栈当处于中断模式时,呈现一个对话框来显示所有已被调用但尚未完成运行的过程。表2-4
VB的调试工具(1)使用插入断点和逐语句跟踪功能(2)调试窗口观察变量的值1)“立即”窗口2)“本地”窗口3)“监视”窗口“添加监视”对话框“监视”窗口插入断点和逐语句跟踪主要内容:对象(属性、事件、方法)窗体(结构、属性、事件)内部控件控件的画法与基本操作VB应用程序结构与事件驱动VB开发应用程序的步骤与第一个应用程序的创建重点与考点:对象的三要素:属性、事件和方法;事件驱动;窗体结构、属性、事件;控件的画法与基本操作
(返回总目录)小
结第3章
VB程序设计基础数据类型变量与常量运算符和表达式常用内部函数顺序结构程序设计3.1
数据类型表3-1
Visual
Basic的标准数据类型数据类型关键字类型符前缀所占字节数范
围字节型Byte无byt10~255逻辑型Boolean无bln2True与False整型Integer%int2-32768~32767长整型Long&lng4-2147483648~2147483647单精度型Single!sng4负数:-3.402823E38~-1.401298E-45正数:1.401298E-45~3.402823E38双精度型Double#dbl8负数:-1.79769313486232D308~-4.94065645841247D-324正数:4.94065645841247D-324~1.79769313486232D308货币型Currency@cur8-922337203685477.5808~922337203685477.5907日期型Date(time)无dtm801,01,100~12,31,9999字符型String$str与字符串长度有关0~65535个字符对象型Objiect无obj4任何对象引用变体型Variant无Var根据分配确定基本数据类型用户自定义数据类型枚举类型3.1.1
基本数据类型数值型数据(Numeric)日期型数据(Date)3.逻辑型数据(Boolean)4.字符型数据(string)
5.对象(Object)类型的数据6.变体(Variant)数据类型1.数值型数据(Numeric)数值型数据一般分为整型数和浮点数两类。整型数分为整数(Integer)和长整数(Long),浮点数分为单精度浮点数(Single)和双精度浮点数(Double)。有时也把货币型数据(Currency)和字节型数据(Byte)划归数值型数据。1)整数(Integer)整数是不带小数点和指数符号的数,在机器内部以2字节二进制码形式表示。VB中用±n[%]来表示整数,其中%为整数的类型符,可以省略。如-123%、
123%都表示整数。长整数(Long)整数的最大值为32767,大于此数,程序运行时就会因为溢出产生中断。此时可使用长整数。长整数用4字节二进制数存储,可以表示更大的整数,其取值范围为-2147483648~2147483647。VB中用±n&来表示长整数,其中&为长
整数的类型符。如-1234&、987654&都表示长整数。浮点数浮点数也称为实型数或实数,由符号、指数和尾数组成,分单精度浮点数(Single)和双精度浮点数(Double),其指数部分分别用“E”(或“e”)和“D”(或“d”)表示。4)货币型(Currency)货币型属于定点实数或整数,用8位字节存储小数点前有15位,小数点后有4位,其余的数字被舍去,其表示形式为在数字后加上“@”。
5)字节型(Byte)字节型数据用1个字节的无符号二进制数存储,取值范围为0~255。日期型数据(Date)日期型数据按64位浮点数值存储,表示的日期从公元100年1月1日~9999年12月31日,时间范围为0:00:00~23:59:59。任何在字面上可以被认作日期的文本都可以赋值给日期变量,且日期文字必须用符号“#”括起来,如#January
15,2002#,#1985-10-19:45:00
PM#都是合法的日期型数据。逻辑型数据(Boolean)逻辑型数据只有两个值:真(True)和假(False),用2字节二进制数存储,经常用来表示逻辑判断的结果。当把数值型数据转换为逻辑型数据时,0会转换为Flase,其它非0值转换为True。反之,当把逻辑型数据转换为数值型时,Flase转换为0,True转换为-1。4.字符型数据(string)字符型数据是指一切可打印的字符和字符串,它是用双引号括起来的一串字符。一个西文字符占一个字节,一个汉字或全角字符占两个字节。在VB中有两种类型字符串:变长字符串和定长字符串。变长字符串的长度不确定,可以是0~231个范围内的字符,而定长字符串长度一定,可以是0~231个范围内的字符注意:空字符串用""表示,而""则表示有一个空格的字符串;另外在字符串中必须用两个连续的双引号来表示字符串有一个双引号。如字符串:abc"计算机"abc,在VB中表示为"abc""计算机""abc"。对象(Object)类型的数据对象类型的数据主要是以变量形式存在的,Object变量通过32位(4字节)来存储,该地址可以引用应用程序中的对象。利用Set语句,声明为Object的变量可以被赋值并被任何对象所引用。变体(Variant)数据类型Variant数据类型又称为万用数据类型,它是一种特殊的、可以表示所有系统定义类型的数据类型。变体数据类型对数据的处理可以根据上下文的变化而变化,除了定长的string数据及用户自定义的数据类型之外,可以处理任何类型的数据而不必进行数据类型的转换,如上所述的数值型、日期型、对象型、字符型的数据类型。Variant数据类型是VB对所有未定义的变量的缺省数据类型的定义。通过
VarType函数可以检测Variant型变量中保存的具体的数据类型。3.1.2用户自定义数据类型除了上述数据类型外,在VB中,用户可以根据需要利用Type语句定义自己的数据类型,其格式如下:Type数据类型名As 类型名数据类型元素名……End
Type其中,数据类型名为自定义数据类型名,数据类型元素名为自定义数据类型中的一个成员,类型名为上述基本类型名或自定义数据类型名。例题:定义一个有关职工信息的自定义类型:Type
Client_RecordcltName
as
String*16cltPassword
as
String*8cltDeposit
as
CurrencyEnd
Type注意:
(1)自定义类型必须在标准模块或窗体模块的声明部分
定义,在标准模块中定义时默认为全局变量(Public)。在窗体模块定义时在关键字Type前应加上Private关键字。
(2)自定义类型元素类型如果有字符串,则必须是定长字符串,即应该使用形式为:strName
As
String*常数其中“常数”指明定长字符串的长度3.1.3枚举类型当一个变量只有几种可能的值时,可以使用枚举的方法将变量的值一一列出来,变量的值就只限制在列出的几种值中。采用这样的方法定义的变量类型称为枚举类型。枚举可以通过在标准模块或公用类模块中的声明部分用Enum语句声明一个枚举类型来创建。其格式为:[Private|Public]Enum类型名称成员名[=常数表达式]……End
Enum3.2
变量与常量3.2.1变量变量:程序运行过程中其值可以改变的量称为变量。变量的命名规则VB变量名只能用字母、数字和下划线组成,变量名中不能包含小数点。VB变量名的第一个字符必须是字母或汉字,最后一个字符可以是类型说明符,且组成变量名的字符数不得超过255个字符。不得使用VB的保留名或保留名后加上类型说明符来作为变量名。变量名在同一个范围内必须是唯一的。为了增加程序的可读性,一般在变量名前加上一个表示该变量数据类型的前缀。2.变量声明用类型说明符表示变量
将类型说明符放在变量名的尾部,可以表示不同的变量,如%表示整型、&表示长整型、!表示单精度型、#表示双精度型、@表示货币型,$表示字符串型。例
如:strName$
dblNum%
curWage@(2)用声明语句声明变量用声明语句声明变量的语法为:
[Dim|Private|Static|Public|Redim}<变量名1>[As<类型>][,<变量名2>[As<类型2>]]…(3)隐式声明与用OptionExplicit语句强制显式声明变量在默认状态下,VB中可以不进行变量声明,此时变量类型默认为变体类型,称为隐式声明,但是这样做可能由于变量名的误写而产生不良后果。3.Variant数据类型Variant数据类型是所有没被显式声明为其他类型变量的数据类型。用VarType函数判断Variant型变量中的数据类型Variant变量对数值的处理Variant变量中的Empty值与Null值4.关于变量声明的说明没有被显示声明的变量都隐含为变体变量。类型说明符的优先级高于Deftype语句,且用类型说明符声明的变量在使用时可以省略类型说明符。3.2.2
常量直接常量直接常量:在程序代码中,以直接明显的形式给出的数据。根据使用的数据类型,直接常量分为:字符串常量、数值常量、布尔常量、日期常量。符号常量系统内部定义的常量内部或系统定义的常量是VB和控件提供的。这些常量可与应用程序的对象、方法和属性一起使用,在代码中可以直接使用它们。用户定义的符号常量用户可以使用Const语句来定义常量:[Public|Private]Const<符号常量名>[As<数据类型>]=<表达式>…运算符表达式3.3
运算符和表达式3.3.1
运算符算术运算符字符串运算符关系运算符逻辑运算符1.算术运算符算术运算符用于数学计算,VB有8个算术运算符(其中减号运算符和取负运算符形式相同),在这8个算术运算符中,只有取负“-”是单目运算符,其它均为双目运算符。表3-2照优先级别的高低列出了算术运算符。表3-2算术运算符运算符名称优先级示例结果^乘方13^29-负号2-2-2*乘32*510/除34/5.8\整除44\50Mod取模55
Mod
41+加62+35—减64.5-2.42.12.字符串运算符字符串运算符有“&”和“+”两个,如表3-3所示表3-3字符串运算符运算符说明示例结果&连接两个字符串表达式"Micro"
&
"soft""Microsoft"+计算和,也可连接字符串"123"+"456""123456"3.关系运算符关系运算符属于双目运算符,用来对两个表达式的值进行比较,比较的结果为逻辑值,即若关系成立则返回True,否则返回False。在VB中,分别用-1和0表示True和False。表3-4列出了VB中的关系运算符。表3-4关系运算符关系运算符含
义实
例结
果=等于"abc"="ABC"False>大于"abc">"
ABC
"True>=大于等于"abc">="甲乙丙"False<小于2<3True<=小于等于"12"<="3"True<>不等于"abc"<>"ABC"TrueLike字符串匹配"ABCDE"
Like
"*CD*"TrueIs对象引用比较4.逻辑运算符逻辑运算符的作用是将操作数进行逻辑运算,结果是逻辑值True或
False。逻辑运算符中,除Not为单目运算符外,其他都为双目运算符。表3-5逻辑运算符运算符含义优先级说明实例结果Not取反1当操作数为假时,结果为真Not
TNot
FTFAnd与2两个操作数都为真时,结果为真TFTFAnd
AndAndAndTFFTTFFFOr或3两个操作数之一为真时,结果为真TTOr
OrT、F
Or
FF、F
Or
TT、TT、FXor异或3两个操作数为一真一假时,结果为真TFXorXorTFTFEqv等价4两个操作数相同时,结果为真TFEqvEqvTFTFImp蕴含5第一个操作数为真,第二个操作数为假时,结果为假,其余结果为真TFImp
ImpTFFT3.3.2
表达式表达式的组成表达式由变量、常量、运算符、函数和圆括号按一定的规则组成,表达式的运算结果的类型由参与运算的数据类型和运算符共同表达式的种类根据表达式中运算符的类别可以将表达式分为算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式等。表达式的书写规则每个符号占1格,所有符号都必须一个一个并排写在同一基准上,不能出现上标和下标。不能按常规习惯省略的乘号*,如:2x要写成2*x。只能使用小括号(),且必须配对。不能出现非法的字符,如π。4.表达式中不同数据类型的转换如果表达式中操作数具有不同的数据精度,则将较低精度转换为操作数中精度最高的数据精度,即按Integer、Long、Single、Double、
Currency的顺序转换,且Long型数据和Single型数据进行运算时,结果总是Double型数据。5.运算符的优先级当表达式中存在多种运算符共存时,按如下优先级的先后进行运算:算术运算符>字符运算符>关系运算符>逻辑运算符3.4
常用内部函数3.4.3日期和时间函数3.4.2字符串函数3.4.1数学运算函数3.4.4格式输出函数3.4.5
转换函数3.4.6Shell函数3.4.1数学运算函数表3-6用数学函数函数说
明实例结果Sin返回弧度的正弦Sin(1).841470984807897Cos返回弧度的余弦Cos(1).54030230586814Atn返回用弧度表示的反正切值Atn(1).785398163397448Tan返回弧度的正切Tan(1)1.5574077246549Abs返回数的绝对值Abs(-2.4)2.4Exp返回e的指定次幂Exp(1)2.71828182845905Log返回一个数值的自然对数Log(1)0Rnd返回小于1且大于或等于0的随机数Rnd0~1之间的随机数Sgn返回数的符号值Sgn(-100)-1Sqr返回数的平方根Sqr(16)4Int返回不大于给定数的最大整数Int(3.6)3Fix返回数的整数部分Fix(-3.6)-33.4.2字符串函数表3-7常用字符串函数函数说
明实例结果Ltrim$(C)返回删除字符串左端空格后的字符串LTrim$("
MyName")"MyName"Rtrim$(C)返回删除字符串右端空格后的字符串RTrim$("MyName
")"MyName"Trim(C)返回删除字符串前导和尾随空格后的字符串Trim$("
MyName
")"MyName"Left$(C,N)返回从字符串左边开始的指定数目的字符Left$("MyName",2)"My"Right$(C,N)返回从字符串右端开始的指定数目的字符Right$("MyName",4)"Name"Mid$(C,N1[,N2])返回从字符串指定位置开始的指定数目的字符Mid
$("MyName",2,3)"yNa"Len(C)返回字符串的长度Len("MyName=王青")9LenB(C)返回字符串所占字节数LenB("MyName=王青")6Instr([N1,]C1,C2[,M])返回字符串在给定的字符串中出现的开始位置InStr(7,"ASDFDFDFSDSF",
"DF")7*InstrRev(C1,C2[,N1][,M])与Instr函数不同的是从字符串的尾部开始查找InStrRev("ASDFDFDFSDSF","DF",
7)5*Replace(C,C1,C2[,N1][,N2][,M])在C字符串中从1或N1开始将C2替换C1(有N2,替换N2次)Replace("ASDFDFDFSDSF","DF",
"*",
2)S***SDSF*Join(A[,D])将数组A各元素按D(或空格)分隔符连接为字符串变量A
=
Array("ABC",
"DEF","GH")Join(A,
"/")ABC/DEF/GHSpace$(N)返回由指定数目空格字符组成的字符串Space$(5)"
"*Split(C[,D])与Join函数作用相反,将字符串C按分隔符D(或空格)分隔成字符数组。A
=
Split("ABC*DEF*GH",A(0)=
"ABC""*")A(1)=
"DEF"A(2)="GH"String$(N,C)返回包含一个字符重复指定次数的字符串String$(2,
"ABCD")"AA"*StrReverse(C)将字符串反序排列StrReverse("ABCD")"DCBA"Lcase(C)返回以小写字母组成的字符串LCase("ABCabc")"abcabc"Ucase(C)返回以大写字母组成的字符串LCase("ABCabc")"ABCABC"3.4.3日期和时间函数函数说
明实例结果Now返回系统日期和时间(yy-mm-dd
hh:mm:ss)Now2001-12-18
16:19:10Date[$][()]返回当前日期(yy-mm-dd)Date$()2001-12-18DateSerial(年,月,日)返回一个日期形式DateSerial(1,2,3)2001-2-3DateValue(C)返回一个日期形式,自变量为字符串DateValue("1,2,3")2001-2-3Day(C|N)返回月中第几天(1~31)Day("2002-3-5")5WeekDay(C|N)返回是星期几(1~7)WeekDay("2002-3-5")3(星期二)WeekDayName(C|N)返回星期代号(1~7)转换为星期名称,星期日为1WeekDayName(3)星期二Month(C|N)返回一年中的某月(1~12)Month("2002-3-5")3Monthname(N)返回月份名Monthname(12)十二月Year(C|N)返回年份(yyyy)Year("2002-3-5")2002Hour(C|N)返回小时(0~23)Hour(Now)16(由系统决定)Minute(C|N)返回分钟(0~!59)Minute(Now)31(由系统决定)Second(C|N)返回秒(0~59)Second(Now)42(由系统决定)Timer[$][()]返回从午夜算起已过的秒数Timer59623.44(由系统决定)Time[$][()]返回当前时间(hh:mm:ss)Time16:35:35(由系统决定)TimeSerial(时,分,秒)返回一个时间形式TimeSerial
(1,2,3)1:02:03TimeValue(C)返回一个时间形式,自变量为字符串TimeValue("1:2:3")1:02:033.4.4格式输出函数
使用格式化函数Format()可以使数值、日期或字符型数据按指定的格式输出。Format函数的语法格式为:Format(表达式[,格式字符串])数值格式化实例日期与时间格式表3-8常用的数值型格式说明字符字符说
明#数字占位符。显示一位数字或什么都不显示。如果表达式在格式字符串中#的位置上有数字存在,那么就显示出来,否则,该位置什么都不显示0数字占位符。显示一位数字或是零。如果表达式在格式字符串中0的位置上有一位数字存在,那么就显示出来,否则就以零显示.小数点占位符,千分位符号占位符%百分比符号占位符。表达式乘以100。而百分比字符(%)会插入到格式字符串中出现的位置上$在数字前强加$+在数字前强加+-在数字前强加-E+用指数表示E-用指数表示表3-9常用的时间日期型格式说明字符符号作用符号作用D显示日期(1~31),个位前不加0dd显示日期(01~31),个位前加0ddddddddw
w显示星期缩写(Sun~Sat)星期为数字(1~7,1是星期日)显示完整日期(yy/mm/dd)ddddddddddww显示星期全名(Sunday~Saturday)显示完整长日期(yyyy年m月d日)一年中的星期数(1~53)M显示月份(1~12),个位前不加0mm显示月份(01~12),个位前加0Nmm显示月份缩写(Jan~Dec)mmmm月份全名(January~December)Y显示一年中的天(1~366)yy两位数显示年份(00~99)Yyyy四位数显示年份(0100~9999)q季度数(1~4)H显示小时(0~23),个位前不加0hh显示小时(0~23),个位前加0M在h后显示分(0~59),个位前不加0mm在h后显示分(0~59),个位前加0S显示秒(0~9),个位前不加0ss显示秒(00~59),个位前加0tttt显示完整时间(小时、分和秒)默认格式为hh:mm:ssAM/PMAm/pm12小时的时钟,中午前AM或am中午后PM或pmA/P,a/p12小时的时钟,中午前A或a中午后P或p表3-10常用的字符型格式说明字符字符说明实例结果@字符占位符。显示字符或是空白。如果字符串在格式字符串中@的位置有字符存在,那么
就显示出来;否则就在那个位置上显示空白。除非有惊叹号字符(!)在格式字符串中,否则字符占位符将由右到左被填充Format(“ABCD”,”@@@@@@”)”ABCD”&字符占位符。显示字符或什么都不显示,如果字符串在格式字符串中和号&的位置有字符存在,那么就显示出来否则就在那个位置上显示空白。除非有惊叹号字符(!)在格式字符串中,否则字符占位符将由右到左被填充Format(“ABCD”,
“&&&&&&”)“ABCD”<强制小写。将所有字符以小写格式显示Format(“ABCD”,
“<&&&&&&”)“
abcd”>强制大写。将所有字符以大写格式显示Format(“abcd”,
“>&&&&&&”)“ABCD”!强制由左至右填充字符占位符。缺省值是由右至左填充字符占位符Format(“ABCD”,
“!&&&&&&”)“ABCD”3.4.5转换函数1.类型转换函数2.取整函数Int和Fix3.数制转换函数1.类型转换函数(1)数据类型转换函数表3-11数据类型转换函数函数返回类型参数范围CboolBoolean任何有效的字符串或数值表达式CbyteByte0~255CcurCurrency-922337203685477.5808~922337203685477.5807CdateDate任何有效的日期表达式CdblDouble负数:-1.79769313486232EE308~-4.94065645841247E-324正数:4.94065645841247E-324~1.79769313486232E308CintInteger-32768~32767,小数部分四舍五入CLngLong-2147483648~2147483647,小数部分四舍五入CsngSingle负数:-3.402823E38~-1.401298E-45;正数:1.401298E-45~3.402823E38CStrString依据参数返回CStrCvarVariant若为数值,范围与Double相同;若不为数值,则范围与String相同CVErrError将实数转换成错误值(2)求ASCⅡ码值
Asc函数用来求一个字符串首字符的ASCⅡ码值,其语法格式为:Asc(string)
参数string可以是任何有效的字符串表达式。如果string中没有包含任何字符,则会产生运行时错误。(3)求ASCⅡ码字符
Chr函数求一个ASCⅡ码值所对应的ASCⅡ码字符。其语法格式为:Chr(charcode)
参数charcode是一个用来识别某字符的
Long型数。charcode的正常范围为
0–255。
0到31之间的数字与标准的非打印
ASCII代码相同。例如,Chr(10)可以返回换行字符。(4)字符串转换为数值■Val函数的作用是返回包含于字符串内的数字,字符串中是一个适当类型的数值。其语法格式为:■Val(string)Val函数实例(5)数值转换为字符串
Str函数的作用是将一个数值表达式转换为一个字符串,且表达式的类型不变。其语法格式为:Str(number)
参数number为一Long型数值表达式,其中可包含任何有效的数值表达式。
当一数字转成字符串时,总会在前头保留一空位来表示正负。如果number为正,返回的字符串包含一前导空格暗示有一正号。
使用Format函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str不同的是,
Format函数不包含前导空格来放置number的正负号。取整函数Int和FixInt和Fix函数的作用都是返回参数的整数部分。其语法格式为:Int(number)Fix(number)参数number是Double或任何有效的数值表达式。如果number包含Null,则返回Null。数制转换函数Hex函数返回代表十六进制数值的String。Oct函数返回
Variant
(String),代表一数值的八进制值。它们的语法格式为:Hex(number)Oct(number)参数number为任何有效的数值表达式或字符串表达式。如果number不是一个整数,那么在执行前会先被四舍五入成最接近的整数。3.4.6
Shell函数
Shell函数的作用是在VB中调用一个可执行文件,返回一个Variant
(Double),如果成功调用的话,该值代表这个程序的任务标识ID,若不成功,则会返回0。Shell函数的格式为:Shell(pathname[,windowstyle])在VB中调用“画图”程序在VB中调用“记事本”程序3.5顺序结构程序设计3.51编码规则3.5.2程序语句3.5.1
编码规则
(1)VB代码不区分字符的大小写,但关键字将会自动转换为大写字母开头,后续字母为小写字母。(2)一行可以书写多条语句,各语句之间用冒号“:”分隔。(3)一行书写不完的语句,可以在该行后加上续行符(由空格+下划线_组成),然后换行书写。(4)一行最多为255个字符,一条语句最多含1023个字符。
(6)用户自定义的变量、过程名等,VB以第一次定义为准,其后的输入自动转换。
(7)程序中可以使用标号用于程序的转向,标号为以字母开头、冒号结尾的字符串。
(8)注释行以Rem或撇号“"”开头,但是只有用撇号引导的注释可以出现在语句之后。可以使用“编辑”工具栏中的“设置注释块”命令将选定的若干行语句或文字设置为注释项,也可以使用“解除注释块”命令将选定的若干行解除注释。
(9)对象名命名约定:每个对象名由三个小写字母组成前缀和表示该对象的作用的缩写字母组成,前缀表明对象的类型,如
cmdExit为一个退出按钮,cmdEnter为一个确认命令按钮。3.5.2
程序语句赋值语句注释语句暂停语句
4.Exit语句结束语句With语句1.赋值语句赋值语句又称为Let语句,其作用是把指定的值赋给某个变量或某个带有属性的对象。一般格式为:[Let]目标操作符=源操作符说明:“=”为赋值号,不等于数学意义上的等号。赋值语句具有赋值和计算的双重功能,即首先计算赋值号右边的源操作符的值,然后赋给左边的目标操作符。目标操作符和源操作符应具有相同的数据类型。但不管表达式是什么类型,都可以赋给一个Variant变量。如果复合语句(一行有多个语句)含有注释语句,则注释语句必定是最后一个语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 脑卒中康复护理措施培训
- 不遵守信访协议书追回
- 大连石油厂搬迁协议书文件
- 心血管外科主动脉夹层术后管理方案
- 财务管理工作规范
- 预防医学科接种程序规范
- 急性胰腺炎的康复训练
- 2026河南省烟草专卖局(公司)高校毕业生招聘190人备考题库及参考答案详解(基础题)
- 2026甘肃甘南州舟曲县城关镇社区卫生服务中心招聘3人备考题库带答案详解(能力提升)
- 2026国家统计局兵团第十四师调查队招聘1人备考题库(新疆)附答案详解(培优b卷)
- 2026年社会学概论试题库200道附答案【能力提升】
- 空调人员安全培训课件
- 志愿服务与社区建设:共建共治共享的基层治理新实践
- 媛颂培训课件
- 器械临床试验中的方案偏离管理与纠正
- 提高跑步速度课件
- 第5课《和大家在一起》(名师课件)
- 2026年河南建筑职业技术学院单招职业技能测试必刷测试卷汇编
- 《做孝顺子女》课件
- 厂房建设与租赁合同标准范例
- 2026蓝色简约风学习成果汇报模板
评论
0/150
提交评论