VulBi基础知识完整版教材

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章 Visual Basic 基础知识
完整版教材
§1 Visual Basic的基础知识
一、概念和术语
1,对象(Object)
事物都可称作对象,比如桌椅就是对象,在Visual Basic里对象主要分为两类:Form和Control。

Form:窗体或称表单,其实指的就是window。

Control:控件,指的是各种按钮、标签等等。

2,属性(Property)
指的是对象的属性,比如姓名、性别、民族、籍贯都是你这个对象的属性。

Caption、Left、Name 是一个命令按钮的属性。

3,事件(Event)
事件是发生在对象上的动作。

比如敲桌子是一个事件,它是发生在桌子这个对象上的一个动作。

比如Click、Dblclick或LostFocus是发生在文本框控件上的事件。

然而事件的发生不是随意的,某些事件仅发生在某些对象上而已,比如“逃避早操被抓住”可以发生在学生这个对象上,但它不会发生在老师这个对象上。

4,方法(Method)
这是一个直译,是一个较难理解的概念,它是对象本身内含的函数或过程,它也是一个动作,但不称作事件,在Visual Basic 里,方法和事件是这样的:
事件:
Private Sub对象名_事件名
(事件内容)
End Sub
方法:对象名.方法名
所以方法是一个简单的不必知道细节的无法改变的事件,同样,方法也不是随意的,一些对象有一些特定的方法。

如果以上概念你记不住,不要紧,实践中你会明白一切,请继续学习。

二、Visual Basic 的开发周期
1,想清楚你想做到什么;
2,拿起笔在纸上画出你的用户界面;
3,拿起鼠标在屏幕上画出你的用户界面,确定对象的属性;
4,告诉计算机你要做的事;
5,让程序运行,看看能否工作;
6,如果不能工作,不必难过;
7,找出那个错误,重新开始。

你应该养成一些良好的习惯,这样在你编大程序时不至于丢三落四,为一些本来可避免的错误反复做第六步和第七步。

三、Visual Basic的存储和运行
1,编写的程序和对象的属性一块儿存在frm文件里;
2,整个程序里包含着一个或许多frm文件,Visual Basic将所有frm文件名存入一个vbp文件里,若丢失了一个vbp文件,尽管frm文件仍在磁盘上,但程序将不能运行了;
3,如果你的程序已经自以为成功了,你可以把它编译成EXE文件,这样做的好处是:
(1)在没有Visual Basic 的环境下可以运行;
(2)速度提高;
(3)别人不知道你的编程方法,还以为你是个编程专家,对你的编程效率大加赞叹。

更商业化的做法是做一张安装盘,Visual Basic 在这方面也为你准备了工具,我们以后会讲到这个工具
四、Visual Basic的不同之处
1,建立用户界面。

对Visual Basic来讲,用户界面是由你直接在屏幕上画出来的,所以Visual Basic 的用户界面看上去总是十分完美。

2,程序对用户界面反应。

在Visual Basic里有许多事件等待你去填写代码,它自动也知道向机器解释这个事件,仅此一点就已经省去你的许多时间。

3,结构化的语言。

在Visual Basic里似乎没有主程序一说,所有的代码都在一个一个模块里,所以所有的程序看起来都是不很长。

五、Visual Basic的不足之处
Microsoft的C++程序员是不会开发出一样东西之后,让自己失业的,大多数简单好用的东西都有它的限制,Visual Basic也是一样。

1,C++和Pascal有更多的对计算机的控制,所以Windows是用C和汇编语言编的,UNIX也是用C 语言编的,想用Visual Basic做一个操作系统是不可能的;
2,C++和Pascal是一种速度更快的语言,所以如果速度在程序中很重要,则Visual Basic 难以胜任;
3,V isual Basic不能在Macintosh、OS/2上运行,也不能在小型机或巨型机上运行。

当然,任何一门语言的精通都需要长时间的“玩耍”,然而现在,我们只须从玩Visual Basic开始。

§2 制作第一个Visual Basic程序
一、我们要做什么
1,我们要做的第一步是确立我们想做什么,我们想做的第一个自已的Visual Basic程序是让一张幸福的小脸眨眼睛的程序。

2,绘制用户界面,这是第二步。

在开始菜单里选程序项,选择Visual Basic 组,选择Visual Basic ,进入Visual Basic环境。

下面是画控件的方法:
1,单击工具栏里想画的控件(这个工具栏出现在Visual Basic界面的左边);
2,在窗体里单击并拖曳鼠标,画出控件(打开Visual Basic时,会有一个名为Form1的空白窗体出现)。

二、绘制用户界面
1,单击工具栏里的选项按钮控件(OptionButton),单击并拖曳鼠标,在Form1里,画一个选项按钮,使它看起来象图示一样;
2,再画三个选项按钮;
3,单击工具栏里图标控件(Image),单击并拖曳鼠标,在窗体里,画一个图标轮廓;
4,再在旁边画四个图标;
5,单击工具栏里命令钮控件(CommandButton),单击并拖曳鼠标,在窗体里,画一个按钮;
6,从File菜单里选择Save File项;
7,在Save对话框填上HellloVB,它的扩展名是frm,单击OK钮;
8,从File菜单选择Save Project项;
9,在对话框里填上HelloVB,它的扩展名是vbp,单击OK钮。

现在,我们已完成了用户界面的一部分设计设计,运行的时侯它看起来就是现在这个样子的。

三、精确设置对象的属性
首先,我们不一定要设置对象的属性,Visual Basic有对其对象属性的缺省值,其次,尽管每个对象有数十个属性,但我们往往只须改变其中的几个值而已。

可以在设计阶段改变对象属性,也可以在运行阶段改变对象属性属性。

在这个程序里我们通过设计阶段的改变属性的方法和运行阶段的改变属性的方法来实行全部的功能。

下面是设置属性的方法:
1,选择需要改变属性的对象(用鼠标在控件上单击,这时在控件周围出现八个小黑块,表示你已选上了这个控件);
2,按F4打开属性窗口;
3,选择想要改变的属性;
4,赋新值。

现在开始设置属性。

1,选择Form对象,按F4键,出现Property窗口;
2,选择Caption属性;
3,通过输入“My First Visual Basic Application”来改变设置;
4,选择Icon属性,单击属性栏旁边标有“…”的键,出现Load Icon对话框;
5,选择VB\icons\misc\;
6,按OK键
7,选择Option1选项按钮,按F4键,出现Property窗口,选择Name属性,键入“optBoth”。

其余的属性设置是这样的:
控件属性设置值
Option1Caption睁眼睛
Option2Caption眨左眼
Name optLeft
Option3Caption眨右眼
Name optRight
Option4Caption闭眼睛
Name optNone
Command1Caption退出
Name cmdExit
Image1Picture
Stretch True
Name imgShow
Image2Picture
Visible False
Name imgBoth
Image3Picture
Visible False
Name imgLeft
Image4Picture
Visible False
Name imgRight
Image5Picture
Visible False
Name imgNone
注:
1,Image控件的Picture属性的设置和Form1的Icon属性的设置方法是一样的(即在属性栏旁边找到标有“…”的按钮,并按它。

);
2,face04,face05,face06图标并不在vb\icons子目录下,那是自已做的。

在Borland C++、Visual C++、Visual FoxPro、Delphi等编程工具里都有制作图标的工具,可以用来制作自已的图标;
3,Visible属性的真假决定对象在运行时是否可以被看见,False值表示对象不可见;
4,Stretch属性决定Image控件里的图像能否被放大或缩小,当然,放得很大的图标会显得很粗糙。

现在我们终于完成了界面的设计,然而,这个程序还不能工作,因为计算机还达不到人的思维水平,它想象不出这个程序是做什么的,与此同时,你已想像出这个出这个程序执行时的样子了。

四、编写程序代码──最令人费解和最没有成就感的必要工作,除了程序员、专家,大多数人对程序代码都感到厌倦,幸好我们都不想成为世界级的程序员,所以目前的Visual Basic 程序代码都不是很难。

1,选定一个对象,比如optLeft,然后按F7键或双击它,Visual Basic 显示代码窗口,Visual Basic 将显示:
Private Sub optLeft_Click()
End Sub
Private表明这段代码的应用范围,我们先不用深究这个词的内涵,Sub是一个开头,是subprogram 的简写,optLeft是对象名,_是一个下划线,用来分开对象名和事件名,Click是指一个事件,Click 就是“单击”的意思,()是一对括号,通常里面是过程所使用的参数,现在它是空的。

这一行的意思是:“这是当用户单击了optLeft选项按钮时,程序应该做的事。


End Sub是这段代码的结束标志,意思是“这是这段代码的最后一行。


我们要在这两行间输入指令。

2,现在输入如下指令
Private Sub optLeft_Click()
=
End Sub
3,从代码窗口顶部选择Object列表框,选择optRight控件,Visual Basic将显示另一个空的Click 过程。

4,输入如下代码:
Private Sub optRight_Click()
=
End Sub
5,用同样方法再输入三条指令:
Private Sub optBoth_Click()
=
End Sub
Private Sub cmdExit_Click()
End
End Sub
Private Sub optNone_Click()
=
End Sub
按下F5键运行这个程序,看它是否能运行。

如果运行不正确,那么你要找出错误,再试一次。

我们已经成功地完成了这个例子,你已经首次尝试了Visual Basic的编程过程。

是否十分简单?
其实编程序就象眨眼的小脸一样有趣。

第二章用户界面设计
§1 用户界面设计概述
一,在设计前应该了解的
通常程序总是由用户操纵的,所以用户需要一个界面来进行操纵。

往往那些漂亮的简单的界面更加吸引用户,让他们认为程序有魔术般的力量,这样他们才会使用这个程序。

下面有四条设计界面的原则。

1,了解用户的习惯
2,保持简单
3,允许用户的错误,并给以提示
4,让用户了解他在程序中的位置
二,Visual Basic用户界面设计基础
通过我们的第一个Visual Basic程序的设计,我们已经知道界面的设计有两步:先绘制控件,然后确定控件属性。

我们发现绘制控件并不是很难。

在工具箱里单击想画的控件,在窗体里按下鼠标并拖曳,然后松开鼠标即可。

双击工具箱里的控件,将在窗体中央出现那个控件。

如果用这种方法的话,要注意双击第二个控件时把上一个控件移开,否则两个控件会叠在一起,引起一些混淆。

确定属性的方法是先选中控件,然后按F4键进入Properties窗口,接着在Properties窗口中找到要设置的属性并进行设置。

下面解释一些常用的属性,这些属性几乎总是要被设置和改变。

(1)Name属性
对象都有名字,尽管我们可以通过描绘一些特性来描绘对象,这样做总是非常麻烦。

计算机也是一样,它把名字看成对象于对象之间的根本差异。

由于计算机的这种顽固观点,它拒绝在同一窗体里出现重名的情况(除非这是一个控件数组),它也拒绝超过40个字的名字。

在简单的程序里,给控件命名不很必要,我们完全可以使用控件Name属性的缺省值。

例如Text1。

但在有几十个控件的复杂窗体里,这种方法会使你花更多的时间去区分它们。

所以,Visual Basic向你推荐由三个小写字母的前缀和一个第一个字母为大写的描述性单词组成的名字。

例如cmdMyButton是一个命令按钮(前缀是cmd)
推荐的前缀是:
对象前缀例子
确认框(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 (2)Caption属性
这仅仅是一个装饰性的属性,它可以长达255字符,包括空格和标点符号,比如一个叫cmdOk的命令钮,它的Caption属性就可以是“Ok”。

编程序时也要考虑到使用键盘的用户,在设置Caption属性在需要加下划线的字母前加上“&” 符号,例如“&File”,输出的就是“F ile”,这样就可以通过按ALT键和标题上那个带下划线的字母来选取它了。

你不必为此编任何代码。

(3)Top,Left属性
只有两种情况需要在属性窗口里设置这两个属性:第一种是用户没有鼠标,第二种是程序员需要十分精确地设定这两个值。

这两个属性决定对象的位置。

当你选中对象,单击并拖曳它的时候,你便在修改这两个值了。

(4)Height,Width属性
这两个属性决定了对象的大小,当你选中控件时,它周围出现八个小黑方块,你把鼠标指向这些方块,鼠标指针将变成一个双向的箭头,这时按下鼠标并拖曳它,即可改变控件的大小,也就改变了Height,Width属性。

同Top,Left属性一样,我们主要通过鼠标的操作来设置Height,Width属性。

§2 窗体和命令钮介绍
一、窗体
窗体是Windows的基本组成部分,这也是为什么这个操作系统叫Windows的原因。

它的主要属性除上面介绍的以外,还包括:
1,Appearance属性
这个属性用来决定控件是否采用三维效果。

2,BorderStyle属性
这个属性决定了窗体的边框形式,共有6种属性值。

改变窗体的BordrStyle属性后,窗体在屏幕上没有变化,它只在运行时才变为你所要求的样子。

3,ControlBox属性
程序员用来决定采用不采用控制框的属性,仅在程序运行时才有效。

4,Font属性
程序员可以改变该窗体上显示信息的字体,它控制着直接在窗体上打印的文本显示。

5,Icon属性
这个属性是用户经常要使用的一种属性。

当用户的应用程序在工具条上最小化或在Windows桌面上变为一个独立应用程序时,该属性决定将采用何种图标,窗体控制框里的图标也由它决定。

为自己的窗体设置该属性时,要控制住自己挑三拣四的冲动。

6,Visible属性
该属性决定窗体是否可见。

错误地改变其值是很危险的,窗体会从眼前消失,这种莫名其妙的事情会使用户惊惶失措,所以肩负重任的程序员一定要慎重哟!
7,WindowState属性
指定窗体在运行时的三种状态:正常、最小化、最大化。

二、窗体的主要事件
1,Load事件
这个事件发生在窗体被装入内存时,且发生在窗体出现在屏幕之前。

窗体出现之前,Visual Basic 会看一看Load事件里有没有代码,如果有,那么它先执行这些代码,再让窗体出现在屏幕上。

2,Click事件,Dblclick事件
这两个事件在单击或双击窗体时发生。

不过你单击窗体里的控件时,窗体的Click事件并不会发生,Visual Basic会去看控件的Click事件里有没有代码。

3,Activate (活动事件)与Deactivate(非活动事件)
显示多个窗体时,可以从一个窗体切换到另一个窗体。

每次激活一个窗体时,发生Activate 事件,而前一个窗体发生Deactivate事件。

三、窗体控制
1,装入或卸出窗体
要装入或卸出窗体,用Load?或Unload语句。

Load语句的语法如下:
Load formName
而UnLoad语句的语法是:
UnLoad formName
FormName变量是要装入或卸出的窗体名。

Load语句只是把窗体装入内存,并不显示出来,要显示窗体可以使用窗体的Show方法。

2,显示或隐藏窗体
要显示窗体,用Show方法。

若尚未装入内存则先装入再显示。

它的语法如下:
mode
FormName变量是窗体名,可选变元mode为0(缺省值)时窗体为非模态,为1时窗体为模态。

模态窗体完全占有应用程序控制权,不允许切换到别的应用程序,除非关闭!而非模态窗体则反之。

同理,隐藏窗体用。

四、命令钮
命令钮有两类:一类是简单的命令钮,一类是图形钮。

图形钮常常成组地出现在屏幕的顶端,成为一些程序炫耀自己贴近用户的标志。

图形钮充分利用了图形用户界面的特征,而且比命令钮小,但它的缺点是用户必须知道图形钮是什么意思,而且没有鼠标的用户恐怕用不了图形钮。

命令钮也有Appearance、Caption、Font、Left、Visible之类的属性。

命令钮的最主要事件就是Click事件,它还有MouseDown和MouseUp等事件
§3 建立菜单
一般Windows的菜单条包含File,Edit,Window和Help菜单标题。

其它的菜单,程序员应将它们插在Edit和Window菜单之间。

在Visual Basic里,为了创建菜单,必须打开菜单编辑窗口。

可以按下Ctrl+E键,也可以从Tools菜单中选择Menu Editor项,或者单击Visual Basic主窗口的从左边数第六个图形钮。

一、给菜单命名
菜单标题和菜单命令也有Caption和Name属性,你设置了这两个属性就等于创建了菜单。

于控件一样Caption是屏幕上可见的,而Name则是一个抽象名称。

别忘了在Caption里加入“&” 以帮助没有鼠标的用户。

二、增加和删除菜单
在Menu Editor中部有三个命令钮分别是Next,Insert,Delete。

Insert可用来增加新的菜单。

在这三个键下面的Caption列表框里选中菜单项(这时它的底色就变成深蓝色),单击Insert键,Visual Basic将上一个增亮菜单下推并增亮一空行,你就可以输入新菜单名和标题了。

Delete键可用来删掉菜单。

你选中要删掉的菜单,单击Delete键就可以删掉它了。

三、移动菜单标题
有四种情况,向上移动,向下移动,向左缩排,向右缩排,这就是Menu Editor中间上下左右箭头的功能。

选中某一菜单标题,安上下箭头,则这个菜单将上下移动到你喜欢的位置上,这也决定了它在界面中的位置。

如果你按左右箭头,情况则有所不同。

由于菜单是分级的,所以,如果它没有缩排,则它是一个菜单标题;如果它缩排一次,那么它将变成一个菜单命令;如果缩排两次,那么它将成为一个子菜单命令。

Visual Basic里你可以总共设计四层子菜单。

四、设置分离条
分离条是指在菜单中将命令分组的线。

奇怪的是,Visual Basic将分离条也看成一个菜单项,它也需要Caption和Name属性,而且它也有其它属性,分离条与菜单项的区别是分离条的Caption属性必须是连字号即减号。

也就是,当你设置了一个Caption属性为“-” 的菜单项时,实际上你就设置了一个分离条,分离条的名字可以是barFile1之类,以表明分离条的位置。

五、菜单的各种简单属性
在Menu Editor里有许多确认框和一些正文框及一个下拉式的列表框,这些东西决定了菜单的各种属性。

1,Checked属性
这个属性值设置为真,将在菜单命令左边产生一个打勾的确认标志,你可以看看File Manager里的View菜单就可以了解什么是确认标志了。

2,Enabled属性
各种各样的用户会产生千奇百怪的操作,在许多Edit菜单里都会有不同形式的让菜单命令模糊的情况。

Enabled属性就是用来做这件事的。

Enabled属性为真,则菜单命令是清晰的,Enabled属性为假,则菜单命令是模糊的,这时用户就不能选中这个菜单项了。

3,Visible属性
用户看见一个模糊的菜单而不能选的时候,有时会非常生气。

所以,如果用户看不见这个菜单命令时,他也就不会发无名之火了。

如果把Visible属性设为假,则菜单根本不会出现在屏幕上。

这样做比把Enabled属性设为假显得更加干脆!
4,Index属性
可以生成菜单命令数组,用索引号区分开。

例如向File菜单中添加一系列最近打开的文件名。

添加菜单可用Load方法。

以上属性可以在运行时设置,形成动态的菜单的情况。

例如:
= False
= False
你还可以改变Caption等属性。

= “Redo”
在对窗体,命令钮和菜单有所了解后,工具箱里的其它控件就更加容易理解了。

下面这些控件的熟练运用,将使你做出漂亮的界面。

六、生成弹出式菜单(或浮动菜单)
几乎每个Windows应用程序都提供弹出式菜单,用户可以右键单击窗体或控件取得这个菜单。

弹出式菜单也属于普通菜单,只是不固定在窗体上,而是可以在任何地方显示。

弹出式菜单用PopupMenu方法调用。

假设我们已经用Menu Editor生成了名为mnuedit的菜单,则可以在MouseUp事件加入如下代码:
If Button = 2 Then PopupMenu mnuedit
下面将用一个实例展示动态菜单和弹出式菜单。

左图表单显示了一个弹出式菜单,在表单的空白处右击鼠标就可得到。

左图表单显示了一个动态菜单,单击Add runtime option钮一下就会使菜单Runtime Menu增加一项,而单击Remove runtime option 钮一下就会使菜单Runtime Menu减少一项。

其源代码如下:
Dim rtmenu
Private Sub cmdadd_Click()
rtmenu = rtmenu + 1
If rtmenu = 1 Then mnuoption(0).Caption = "Runtime Option"
Load mnuoption(rtmenu)
mnuoption(rtmenu).Caption = "option #" & rtmenu
End Sub
Private Sub cmdremove_Click()
If rtmenu = 0 Then
MsgBox "menu is empty"
Exit Sub
End If
Unload mnuoption(rtmenu)
rtmenu = rtmenu - 1
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu mnuedit
End Sub
§4 框架,确认框和选项钮
一、确认框和选项钮就好比多项选择和单项选择,在考试时选择题总比简答题要好做,因为你可以用瞎蒙的策略。

用户界面设计的保持简单的原则使确认框和选项钮成为有用的框件。

确认框和选项钮用于向程序输入信息。

确认框选中时会在小方框里打一个钩,菜单设计窗口里就有这种确认框的例子。

选项钮选中时会在小圆圈里点一个点。

它们的主要属性除了Name,Caption等,还有:
1,Value属性
决定它们是否被选中的属性。

2,Alignment属性
决定它们的对齐方式。

二、有两道选择题或更多时,我们就必须对它们进行分组。

这种分组需要借助框架控件。

分组的方法是:
1,在工具箱里单击Frame控件;
2,在窗体里拖曳鼠标画出框架;
3,在工具箱里单击确认框或选项钮控件;
4,在框架里画确认框或选项钮;
5,把所需的确认框或选项钮都画好。

§5 正文框和标签
正文框通常用于向计算机输入信息,而标签通常用于输出信息。

正文框是一个十分重要的控件,因为由确认框和选项钮向程序输入的信息毕竟只有少数的几条信息而已。

标签和正文框的区别很小,标签可以看成是一个在运行时不能修改正文的正文框。

因此标签主要用于输出信息。

标签是生活中不可缺少的部分,比如教室里的“团结,勤奋,严谨,活泼”就是一个每天不得不面对的标签。

1,BorderStyle属性
决定了正文框和标签的边框形式。

2,正文框的Text属性和标签的Caption属性
这两个属性其实是一样的,它决定了用户在屏幕上看到的东西,只不过正文框的Text属性在运行时可以直接在正文框里修改。

3,Alignment属性
这个属性决定正文或标题的排列方式。

4,正文框的Multiline属性
如果正文框里的字太多了,超过了正文框的宽度,那么计算机就在某个我们不知道的地方显示这行字,所以我们要设置Multiline属性为True,这样正文框就有了字换行的能力。

5,正文框的PasswordChar属性
如果用户从事的是一种掌握大量金钱或机密的工作的话(此类用户肯花大钱来买关于计算机的东西),那么他就需要对自己的工作遮遮掩掩,在Visual Basic里你可以作一个口令正文框来实现这种遮掩。

方法是:
(1)选中作为口令正文框的正文框。

(它的周围出现八个小方块)
(2)按F4键打开属性窗口。

(3)设置Multiline属性为False。

(4)设置PasswordChar为用于掩盖的字符。

(只能是一个字符,比如 * 号)
第三步使口令正文框只有一行,因为Multiline属性为True将使Password属性失效。

Visual Basic 认为口令不必太长,因为太长的口令更加容易忘记。

6,正文框的Maxlength属性
为了防止一些古怪用户输入太多的废话,程序员有限制正文框正文长度的权力,这就是Maxlength 属性。

如果Maxlength属性设置为零,那么正文框就只受计算机内存的限制了。

7,Label的AutoSize属性和WordWrap属性
这两个属性在一起搭配使用总是让人混淆,以至于Visual Basic附带的示例程序里有一个程序里有这两个属性的例子,它的路径通常是c:\vb\samples\controls\。

在Visual Basic里运行这个例子,选择Options菜单的WordWrap and AutoSize。

AutoSize属性使标签自动地扩大缩小以适应标签的Caption 属性,但是它只会水平伸展。

WordWrap属性使标签具有字换行处理的能力。

为了使标签具有垂直伸展和字换行处理,必须设置它的AutoSize属性和WordWrap属性同时为True。

AutoSize属性为False,WordWrap属性为False时,若标签不够高而Caption太长时,Caption将被切割掉。

AutoSize属性为False,WordWrap属性为True时,情况同上。

AutoSize属性为True,WordWrap属性为False时,表示可以水平伸展,但只显示一行信息。

Locked属性
程序员可以阻止用户改变文本框的内容,用户只可以看文本而不能改变它。

这是Visual Basic 的新功能。

§6 图形框(Picture Box)和图象框(Image Box)
Picture Box和Image Box是用来把图形放入程序里的。

Picture Box和Image Box可以显示几种不同格式的图形。

Bitmap文件(.BMP或.DIB)、Icon文件(.ICO或.CUR)、Metafile图元文件(.WMF)、增强型图元文件(.EMF)、JEPG(.JPG)及GIF(.GIF)文件。

在Visual Basic里Microsoft大概送给了我们几百个上述前三类文件,它们的路径通常是:c:\vb\bitmaps、c:\vb\icons、c:\vb\metafile。

它们的主要属性有:
1,设置Picture Box和Image Box的Picture属性
(1)单击Picture Box或Image Box。

(2)按F4键打开属性窗口。

(3)单击Picture属性。

(4)单击设置框右边的省略号,Visual Basic将显示Load Picture对话框。

(5)选择用户需要的文件,单击Ok键。

则Visual Basic将图形装入Picture Box或Image Box。

如果想在程序运行期间装入或删除图形,就需要用程序代码来实现了。

我们可以使用Load Picture函数。

例:
装入图形
= LoadPicture ( “c:\graphics\” )
删除图形
= LoadPicture ( “ ” )
2,Picture Box和Image Box的BorderStyle属性
如同正文框和标签一样,你可以设计Picture Box和Image Box的边框。

3,Stretch属性和AutoSize属性
Image Box只有Stretch属性,而Picture Box只有AutoSize属性。

AutoSize属性设为True,则Picture Box改变自己的大小来适应其中的图形。

Stretch属性设为True,则Image Box中的图形将改变自己的大小来适应外面的边框。

§7 Line和Shape控件
总有一些除了装饰作用没有别的功能的东西。

如Line 和Shape控件。

1,Line和Shape的BorderColor属性
一般来说边界颜色是黑的,但你也可显示你喜爱的颜色。

在属性窗口里单击BorderColor属性,再单击省略号,Visual Basic将显示一块调色板,在调色板里选择你喜爱的颜色。

2,Line和Shape的BorderWidth属性
这个属性决定线的粗细。

3,Line和Shape的BorderStyle属性
这个属性决定线的轮廓。

4,Shape的FillStyle属性
在形状中我们可能更加喜欢实心的样子,这也可以做到。

我们已经了解了窗体,菜单,及十种不同的控件,这正是Windows的基本元素,再加上它们的各种属性,就可以画出各式各样的用户界面了!
§6&§7总结:Image、Shape 和 Line 控件有时被称作轻量图形控件。

它们需要较少的系统资源,因此比 PictureBox 控件显示得快并且包含 PictureBox 中可用的属性、方法和事件的子集。

每一个控件都适用于一个特定的目的。

1、其它控件的容器: PictureBox
2、Printing 或 graphics 方法: PictureBox
3、显示图片 Image 或 PictureBox
4、控件显示简单图形元素:Shape 或 Line 控件
第三章编程的基础
在我们设计完用户界面后,我们就将开始了编写指令代码的过程。

这是一个相对枯燥但却是必须的过程。

§1 Visual Basic编程概述
一、事件驱动应用程序
简单地说就是当事件发生时程序才工作,否则程序将等待事件的发生。

在事件驱动程序中,用户的操作或系统事件执行一个事件过程,这样,程序执行的顺序就由哪一个事件的发生决定,由用户的操作决定。

就是用户管理,代码响应。

二、事件过程
用户界面对事件响应的三个部分是:
1,窗体
2,控件
3,菜单
编写程序代码的通常过程是:
1,确定哪一个对象(窗体,控件或菜单)做出反应——单击此对象选中它;
2,打开代码窗口——简单的方法是按False7键或者双击对象;。

相关文档
最新文档