×

vb程序设计教程

vb程序设计教程(VB程序设计教程第二版答案)

admin admin 发表于2023-04-13 00:21:09 浏览69 评论0

抢沙发发表评论

本文目录一览:

二级VB基础教程:1.3面向对象程序设计的基本概念

1.3 面向对象程序设计的基本概念

1.基本术语

(1) 对象和对象类

对象是代码和数据的组合,可以作为一个单位来处理。对象可以是应用程序的一部分,比如可以是控件或窗体。整个应用程序也是一个对象。

VB中的每个对象都是用类定义的。用饼干模子和饼干之间的关系作比,就会明白对象和它的类之间的关系。饼干模子是类。它确定了每块饼干的特征,比如大小和形状。用类创建对象,对象就是饼干。类是面向对象程序设计的核心技术,可以理解成一种定义了对象行为和外观的模板;把对象看作是类的原原本本的复制品,-vb程序设计教程

类具有继承性、封装性、多态性、抽象性。

(2) 属性

属性是对对象特性的描述,VB为每一类对象都规定了若干属性,设计中可以改变具体对象的属性值。比如窗体的背景颜色、高度与宽度。

(3) 事件(Event)

事件是发生在对象上的动作。事件的发生不是随意的,某些事件仅发生在某些对象上。

在VB中事件的调用形式是:

Private Sub对象名_事件名

 (事件内容)

End Sub

(4) 方法(Method)

  方法指的是控制对象动作行为的方式。它是对象本身内含的函数或过程,它也是一个动作,是一个简单的不必知道细节的无法改变的事件,但不称作事件;同样,方法也不是随意的,一些对象有一些特定的方法。在VB里方法的调用形式是:-vb程序设计教程

  对象名.方法名

2. 属性、方法和事件之间的关系

VB 对象具有属性、方法和事件。属性是描述对象的数据;方法告诉对象应做的事情;事件是对象所产生的事情,事件发生时可以编写代码进行处理。

VB 的窗体和控件是具有自己的属性、方法和事件的对象。可以把属性看作一个对象的性质,把方法看作对象的动作,把事件看作对象的响应。

日常生活中的对象,如小孩玩的气球同样具有属性、方法和事件。气球的属性包括可以看到的一些性质,如它的直径和颜色。其它一些属性描述气球的状态(充气的或未充气的)或不可见的性质,如它的寿命。通过定义,所有气球都具有这些属性;这些属性也宽橡世会因气球的不同而不同。-vb程序设计教程

气球还具有本身所固有的方法和动作。如:充气方法(用氦气充满气球的动作),放气方法(排出气球中的气体)和上升方法(放手让气球飞走)。所有的气球都具备这些能力。

气球还有预定义的对某些外部事件的响应。例如,气球对刺破它的事件响应是放气,对放手事件的响应是升空。

在VB程序设计中,基本的设计机制就是:改变对象的属性、使用对象的方法、为对象事件编写事件过程。程序设计时要做的工作就是决定应更改哪些属性、调用哪些方法、对哪些事件作出响应,从而得到希望的外观和行为。-vb程序设计教程

3.事件驱动模型

在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时调用过程。

在事件如判驱动的应用程序中,代码不是按照预定的路径执行,而是在响应不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。-vb程序设计教程

因为事件的顺序是无法预测的,所以在代码中必须对执行时的“各种状态”作一定的假设。当作出某些假设时(例如,假设在运行来处理某一输入字段的过程之前,该输入字段必须包含确定的值),应该组织好应用程序的结构,以确保该假设始终有效(例如,在输入字段中有值之前禁止使用启动该处理过程的命令按钮)。-vb程序设计教程

在执行中代码也可以触发事件。例如,在程序中改变文本框中的文本将引发文本框的 Change 事件。如果 Change 事件中包含有代码,则将导致该代码的执行。如果原来假设该事件仅能由用户的交互操作所触发,则可能会产生意料之外的结果。正因为这一原因,所以在设计应用程序时理解事件驱动模型并牢慎肢记在心是非常重要的。-vb程序设计教程

4.交互式开发

传统的应用程序开发过程可以分为三个明显的步骤:编码、编译和测试代码。但是 Visual Basic 与传统的语言不同,它使用交互式方法开发应用程序,使三个步骤之间不再有明显的界限。

VB在编程者输入代码时便进行解释,即时捕获并突出显示大多数语法或拼写错误。看起来就象一位专家在监视代码的输入。

除即时捕获错误以外,VB 也在输入代码时部分地编译该代码。当准备运行和测试应用程序时,只需极短时间即可完成编译。如果编译器发现了错误,则将错误突出显示于代码中。这时可以更正错误并继续编译,而不需从头开始。-vb程序设计教程

由于 VB的交互特性,代码运行的效果可以在开发时进行测试,而不必等到编译完成以后。

1.4 利用VB开发应用程序的一般步骤

一个VB程序也称为一个工程,由窗体、标准模块、自定义控件及应用所需的环境设置组成。开发步骤一般如下:

1. 创建程序的用户界面

2. 设置界面上各个对象的属性

3. 编写对象响应事件的程序代码

4. 保存工程

5. 测试应用程序,排除错误

6. 创建可执行程序

VB考试教程:多窗体程序设计

二、多窗体程序设计

当应用程序功能较强和分类较多,程序和用户的交互频繁时,如果只用一个窗体和用户进行交互,一方面难以进行合乎美观原则的设计,另一方面分类工作很难,设计出来的界面不符合友好原则。这时使用多重窗体程序设计,增强程序界面的友好性。-vb程序设计教程

多窗体指的应用中有多个窗体,它们之间没有绝对的从属关系。每个窗体的界面设计与单窗体的完全一样,只是在设计之前应先建立窗体,这可以通过菜单“工程”/“添加窗体”命令实现。程序代码是针对每个窗体编写的,当然,应注意窗体之间存在的先后顺序和相互调用的关系。所以,多重窗体实际上是单一窗体的集合,而单一窗体是多重窗体程序设计的基础。-vb程序设计教程

一般说来,多窗体的设计基本分成以下几个步骤:

 ◆分析应用要求,将其功能划分为不同的几部分

 ◆分别创建各个窗体、模块

 ◆在创建窗体时,除各窗体自身要完成的功能外顷哗,还要考虑窗体之间的调用关系

 ◆点击[工程]/[属性]菜单,在[启动对象]中选择应用运行时首先执行的对象

 ◆运行应用程序,检验应用及各窗体的运行情况

1、多窗体程序设计常用的方法

在单窗体程序设计中,所有的操作都在一个窗体中完成,不需要在多个窗体中切换。而在多窗体程序中逗察,需要打开、关闭、隐藏或显示指定的窗体,这可以通过相应的语句和方法来实现。

在多窗体程序设计经常用到下面四种方法:Load,Show Hide和Unload.

(1)Load方法

它的语法结构如下:

Load [窗体名称]

使用Load方法调用的窗体被存入内存,并不显示出来,同时会产生一个Form_Load()事件。

例如:Load Form2 '将Form2窗体存入内存

(2)Show方法

它的语法结构如下:

[窗体名称].Show

Show方法用来显示被调用的窗体。Show方法兼有装入和显示两种功能,也就是说,在执行Show方法时,如果窗体不在内存中,则Show方法会自动的把窗体调入内存,然后再显示出来。

例如: Load Form2

Form2.Show '将Form2存于内存,并显示Form2窗体

(3)Hide方法

它的语法结构如下:

[窗体名称].Hide

使用Hide方法会隐藏被调用的窗体,既不在屏幕上显示,但仍在内存中(与Unload方法不同),被调用的窗体中的属性等已经处于无效的状态。

例如:

Form1.Hide

Form2.Show '将Form隐藏,并显示Form2窗体

(4)Unload方法

它的语法结构如下:

Unload [窗体名称]

使用Unload方法会清除内存中指定的窗体,与此同时,窗体中的变量和属性等都会处于无效的状态,在移去窗体的同时会产生一个Form_QueryUnload()事件。

例如:Form1.Show

Unload Form2'显示Form1窗体,从内存中移去Form2窗体。

2、一个多窗体程序设计示例

下面就以一个示例来说明如何运进多窗体的程序设计(见教材P283)。

(1)启动新工程

1)设置属性

首先启动一个新的工程,屏幕出山乎茄现一个空白的窗体,窗体的属性设置如下:

属性 设置

Name

Form1

Caption

Form1

BorderStyle

3-Fixed Dialog'窗体的大小不能够在程序的运行过程中改变

MDIChild

False

StartUpPosition

2-CenterScreen'窗体在程序的运行过程中始终位于屏幕的中央

Moveable

False'在程序的运行过程中不能够移动窗体

2)添加控件

在空白的窗体上添加如下控件:五个Label控件、四个TextBox控件和两个CommandButton控件。  

(2)添加窗体

选择菜单“工程(Project)”/“添加窗体(add form)”命令,弹出对话框,在添加窗体的对话框中选择"窗体"项,单击[打开]按钮,系统就会自动的向原有的工程中添加一个窗体。

1)添加控件

在新的窗体上放置一CommandButton控件,作用是在隐藏新增的窗体的同时显示原有的窗体。

则窗体如下:

2)添加代码

在"继续"按钮的Command1_Click()事件中添加下列代码:

Private Sub Command1_Click()

Form2.Hide '隐藏窗体2

Form1.Show '显示窗体1

End Sub

程序说明:在窗体Form2被显示的过程中,单击[继续]按钮,就会激活Command1_Click()事件,然后通过Form2.Hide 和Form2.Show两条语句实现隐藏窗体和显示窗体的功能。

(3)添加说明模块

选择菜单[工程]/[添加模块],就会弹出对话框:

在模块的声明段中添加下列代码:

Global a1 as Single

Global a2 as Single

Global a3 as Single

Global a3 as Single '定义四个全局变量,分别用来存储第一季度,第二季度、第三季度和第四季度的销售情况

(4)添加程序代码

1)窗体Form1中的代码如下:

Private Sub Command1_Click()

 Form1.Hide

 Form2.Show

End Sub

Private Sub Command2_Click()

 End

End Sub

Private Sub Text1_Change()

 a1 = Val(Text1.Text) 'VAL()函数用于将字符串转化为数值型

End Sub

Private Sub Text2_Change()

 a2 = Val(Text2.Text)

End Sub

Private Sub Text3_Change()

 a3 = Val(Text3.Text)

VB基础教程:第二章第一节VB用户界面设计基础

第二章 VB的界面设计

2.1 VB用户界面设计基础

1. 概述

界面的设计有两步:先绘制控件,然后确定控件属性。

 

  绘制控件:在工具箱里单击想画的控件,在窗体里按下鼠标并拖曳,然后松开鼠标即可。确定属性:先饥橡选中控件,然后按F4键或单击工陪蠢具栏上的属性窗口进入属性(Properties)窗口,再在属性窗口中找到要设置的属性并进行设置。烂乱旁-vb程序设计教程

2. 常用属性的设置

(1)Name属性

对象都有名字,计算机把名字看成对象于对象之间的根本差异,因此在同一窗体里不许出现重名的情况(除非这是一个控件数组),且名字不得超过40个字。

在简单的程序里,给控件命名不是很必要,完全可以使用控件Name属性的缺省值。例如Text1。但在有几十个控件的复杂窗体里,就很难区分它们。所以,VB推荐由三个小写字母的前缀和一个第一个字母为大写的描述性单词组成的名字。例如cmdMyButton是一个命令按钮(前缀是cmd)-vb程序设计教程

推荐的前缀

对象

前缀

例子

确认框(Check Box)

chk

chkCareerChioce

组合框(Combo Box)

cbo

cboCrimesCommitted

命令钮(Command Button)

cmd

cmdExit

数据库控件(Data Control)

dat

datTopSecretInfo

目录列表框(Directory List Box)

dir

dirTree

驱动器列表框(Drive List Box)

drv

drvHardDisk

文件列表框(File List Box)

fil

filDocuments

窗体(Form)

frm

frm1040Tax

框架(Frame)

fra

fraGroupButtons

水平滚动条(Horizontal Scroll Bar)

hsb

hsbTemperature

图形(Image)

img

imgPrettyDrawing

标签(Label)

lbl

lblFakeName

线(Line)

lin

linBorder

列表框(List Box)

lst

lstCandidates

菜单(Menu)

mnu

mnuHamAndEggs

选项钮(Option Button)

opt

optStation101

图形框(Picture Box)

pic

picPrettyPicture

几何图形(Shape)

shp

shpUpOrShipOut

文本框(Text Box)

txt

txtWarning

垂直滚动条(Vertical Scroll Bar)

vsb

vsbMoneyRaised

VB基础教程:第四章第六节VB程序调试

4.6 程序调试

1. VB的调试工具

(1)设置自动语法检查

枣樱 打开工具菜单 → 单击选项命令 → 选择 我器 页面 →将 自动语法检测 勾上。

(2)利用VB调试工具栏

 利用该工具栏可以运行程序、中断运行、在程序中设置间断点、监视变量、单步调试、过程跟踪等操作。

2. VB的三种模式

(1)设计模式

 在设计模式下可以进行程序的界面设计、属性设置、代码编写等,标题栏上显示“设计”,在此模式下不能运行程序,也不能使用调试工具。

(2)运行模式

 执行“运行”菜单中的“启动”命令或单击工具栏上的启动按钮或按F5键,即由设计模式进入运行模式,标题栏显示“运行”,在此阶段可以查看程序代码,但不能修改。若要修改,必须单雀咐击工具栏上的“结束”按钮,回到设计模式,也可以选择“中断”按钮,进入中断模式。-vb程序设计教程

(3)中断模式

当程序凳岁丛运行时单击了“中断”按钮,或当程序出现运行错误时,都可以进入中断模式,在此模式下,运行的程序被挂起,可以查看代码、修改代码、检查数据。修改结束,单击“继续”按钮可以继续程序的运行,也可以单击“结束”按钮停止程序的执行。-vb程序设计教程

3. 常见错误

(1) 我时错误

当用户在代码窗口我代码时,VB会对程序进行语法检查,当发现语句没有输完、关键字输错等情况时,系统会弹出对话框,提示出错,并在错误处加亮显示,以便用户修改。

(2)编译时错误

是指用户单击了“启动”按钮,VB开始运行程序前,先编译执行的程序段时产生的错误,此错误是由于用户未定义变量、遗漏关键字等原因而产生的。发现错误时系统会停止编译,提示用户修改。

(3)运行时错误

指VB在编译通过后,运行代码时发生的错误,一般是由于指令代码执行了非法操作引起的,如:数据类型不匹配、试图打开一个不存在的文件等。系统会报错并加亮显示、等候处理。

(4)逻辑错误

如果程序运行后得不到所希望的结果,则说明存在逻辑错误。如:运算符使用不正确,语句的次序不对、循环语句的起始、终值不正确。这种错误系统不会报错,需要用户自己分析判断。

VB考试教程:菜单程序设计五弹出式菜单的设计

五、弹出式菜单的设计

功能:用于对窗体中某个特定区域有关的操作或选项进行控制。与下拉式菜单不同,它不需要在窗口的顶部下拉打开,可在窗口的任意位置打开。

设计分为两步:首先用菜单我器建立菜单,这一步与前面介绍的基本相同,的区别是早陵行,必须把菜单名(即主菜单项)的可见属性设置为False(子菜单项不要设置为False);第二步用PopupMenu方法弹出显示。 -vb程序设计教程

PopupMenu方法用来显示弹出菜单,语法格式为:

object.PopupMenu menuname,flags,x, y,boldcommand

其中:

Object(对象)——窗体名。

Menuname(菜单名)——指在菜单我器中定义的主菜单项名。

X、Y——弹出式菜单在窗体上的显示位置的X、Y坐标(与Flags参数配合使用)。

Boldcommand——指定弹出式菜中的弹出式菜单控件的名字,用以显示为黑体正文标题。

Flags——该参数是一个数值或符号常量,指定弹出式菜单的位置和行为,其取值分为两组,一组用来指定菜单位置,另一组用来定义特殊的菜单行为,如下表:

指定菜单位置

定位常量 值 作用

VbPopupMenuLeftAlign 0 X坐标指定弹出式菜单的左汪穗边界位置

VbPopupMenuCenterAlign 4 X坐标指定弹出式菜单的中间位置

VbPopupMenuRightAlign 8 X坐标指定弹出式菜单的右边界位置

定义菜单行为

定位常量 值 作用

VbPopupMenuLeftButton 0 通过单击鼠标左键选择菜单命令

VbPopupMenuRightButton 8 通过单击鼠标右键选择菜单命令

说明:

PopupMenu方法的6个参数中,除“菜单名”外,其余参数都是可选的。当省略了“对象”时,弹出式菜单只能在当前窗体中显示。如果需要在其它窗体中显示弹出菜单,则必须加上窗体名。

Flags的两组参数可以单独使陆哗用,也可以联合使用。当联合使用时,每组中取一个值,两个值相加;如果使用符号常量,则两个值用Or连接。

X、Y分别用来指定弹出式菜单显示位置的横、纵坐标,如果省略,则弹出菜单在鼠标光标的当前位置显示。

弹出式菜单的“位置”由X、Y、Flags参数共同指定。如果省略这几个参数,则在单击鼠标右键弹出菜单时,鼠标光标所在位置为弹出式菜单左上角的坐标。在默认情况下,以窗体的左上角为坐标原点。如果只省略Flags参数,不省略X、Y参数,则X、Y为弹出式菜单左上角的坐标;如果同时使用X、Y及Flags参数,则弹出菜单的位置分为一下几种情况:-vb程序设计教程

Flags=0 X、Y为弹出式菜单左上角的坐标

Flags=4 X、Y为弹出式菜单顶边中间的坐标

Flags=8 X、Y为弹出式菜单右上角的坐标

为了显示弹出式菜单,通常把PopupMenu方法放在MouseDown事件中,该事件响应所有的鼠标单击操作。按照惯例,一般通过单击鼠标右键显示弹出菜单,这可以用Button参数来实现。对于两个键的鼠标来说,左键的Button参数值为1,右键的Button参数值为2。因此可以强制使用右键来响应MouseDown事件而显示弹出菜单:-vb程序设计教程

If Button=2 Then PopupMenu 菜单名

下面举例说明建立弹出式菜单的一般过程。

例6 建立一个弹出式菜单,用来改变文本框中字体的属性。

步骤如下:

打开菜单我器,设置各菜单属性。

标题 名称 内缩符号 可见性

字体格式化

粗体

斜体

下划线

20

隶书

退出 popFormat

popBold

popItalic

popUnder

font20

fontLs

Quit 无

1

1

1

1

1

1 False

True

True

True

True

True

True

编写窗体的MouseDown事件过程。

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 2 Then '判断所按下的是否鼠标右键,如果是,则用PopupMenu方法弹出菜单。

PopupMenu popFormat 'PopupMenu方法省略了对象参数,指的是当前窗体。

End If

End Sub

鼠标事件:

鼠标事件除了单击(Click)、双击(DbClick)事件外,还有识别按下或放开某个鼠标键而触发的事件,它们是压下鼠标事件(MouseDown)、松开鼠标事件(MouseUp)、移动鼠标光标事件(MouseMove)。3个鼠标事件具有相同的参数,含义分别为:-vb程序设计教程

◆Button——被按下的鼠标键,可取3个值1、2、4,分别表示鼠标的左键、右键和中间键(如果没有或不可用,可省略)。

◆X、Y——鼠标光标当前的位置,不需要给出具体的数值,它随鼠标光标在窗体上的移动而变化。

◆Shift——表示 Shift、Ctrl和Alt的状态。它有8个值(0—7),分别作用如下:

0——未按转换键

1——按下Shift键

2——按下Ctrl键3

3——同时按下Shift和Ctrl键

4——按下Alt键

5——按下Alt键和Shift键

6——按下Alt键和Ctrl键

7——同时按下Shift、Ctrl和Alt键

VB程序设计一般的四个步骤

1、建立应用程序界面

2、设置对象的属性

3、编写应用程序的代码

4、保存和运行程序

VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。-vb程序设计教程

扩展资料

VB语言缺点

Visual Basic 语言具有不支持继承、无原生支持多线程、异常处颂做理不完汪局善等三项明显缺点,使其有所局限性(此些缺点皆已在 vb .net 获得改进)。

1、不支持继承

VB 5.0 和 VB 6.0 都是基于对象的编程语言,但是不包含继承特性。VB 中提供了特殊的类的功能,但是还是不能满足程序员的需求。

2、无原生支持多线程

Visual Basic 对于多线程无原生支持,只能通过Windows API的调用实现,且极其的不稳定。因为在API创建的线程中,并没有自动初始化运行时库,导致部分的函数无法使用。一般的,在VB6等早期的VB开发环境下,使用API创建线程的目的是完成容易使程序假死的大量数据或者逻辑的计算。-vb程序设计教程

3、异常处理不完善

Visual Basic 中内置异常处理,即使未写异常处理代码,一旦用户出错也会弹出一个明确写出出错原因对话框,接着程序终止。

Visual Basic 中可以使用 Err.Raise抛出异常。对系统及用户抛出的异常的处理常用两种模式:一是使用 On Error Resume Next 处理错误;另一种是使用 On Error Goto 将运行引入错误处理代码。但相对 C++ 等语言而言,这样的异常处困樱让理破坏了代码的结构。-vb程序设计教程