VB详细讲义Word文档格式.docx
- 文档编号:7106222
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:72
- 大小:815.41KB
VB详细讲义Word文档格式.docx
《VB详细讲义Word文档格式.docx》由会员分享,可在线阅读,更多相关《VB详细讲义Word文档格式.docx(72页珍藏版)》请在冰点文库上搜索。
一个应用系统的设计,是一项工程。
工程(Project)——VB就是这样称呼的。
在新建一个工程之前,应准备一个专门的文件夹集中存放工程的各种文件文件。
我们今后要做许多工程,为此先在D盘新建一个总的文件夹:
MyVB吧。
在这个文件夹下,为即将新建的第一个工程准备一个文件夹GC1.这样,第一个工程文件夹的标识就是
D:
\MyVB\GC1
VB一启动就弹出新建工程对话框,如图1。
图1新建工程对话框
这是一个3页的页框,看各页的标签(新建、现存、最新)就会明白各页的作用。
现在应该是用新建页吧。
选择默认的工程类型——标准EXE,单击打开按钮,就进入了VB的设计环境。
在开始接触VB设计环境的时候,建议大家用“只见树木,不见森林”的思想方法来对待这个环境。
等将来“树木”见多了,自然就会认识“森林”的。
学习,思想方法很重要哦。
现在我们面临的这个界面,是VB的设计模式界面(窗口标题栏有[设计]字样)。
首先我们注意到有如图2的那片区域,这就是工程设计区。
外面的窗口是工程窗口。
里面的窗口是应用程序运行的窗口,VB叫窗体(Form)。
工程的设计实际上就是一个个窗体的设计,所以设计区主要是窗体设计的窗口。
图2窗体窗口
我们可以先用鼠标把工程窗口适当拖大,或者索性最大化。
窗体是个设计对象。
我们可以通过它周围的8个拖放点用鼠标把这个对象适当拖大,这已经是老经验啰。
调整对象的大小,实际上设计到对象的高度(Height)和宽度(Width)两个属性的改变。
现在我们把注意力转移到窗体窗口右边三个窗口中位于中间的那一个——属性窗口,如图3。
要修改窗体的标题,涉及的属性名是Caption.现在我们把这个属性的值改成“我的首个窗体”,立竿见影。
我们要想改变窗体的底色,这涉及的属性名是BackColor.
图3属性窗口
关于窗口的结构和具体操作等未尽的话让老师解释吧。
现在工程和窗体都是系统自动命名的,在第一次保存时系统会让你给窗体文件和工程文件选择文件夹并依次命名。
窗体设计窗口右边三个窗口中最下面那个是窗体布局窗口。
你可以在这里用鼠标把窗体移到屏幕中央,再运行(F5或运行菜单)窗体,看看设计的运行效果。
工程运行时窗口标题栏有[运行]字样,这是运行模式。
关闭运行窗口回来,又是设计模式。
现在退出VB,结束这一轮的学习。
设计2体验界面设计
再次启动VB,继续设计上次的工程时,自然是用新建工程对话框的最新页打开工程。
但是窗体窗口并没有出现窗体。
这就要用到窗体窗口右边三个窗口中的第一个——工程窗口。
如图4。
图4工程窗口
在这里将窗体组展开就看见上次设计的窗体了,双击它就打开在窗体窗口供你编辑。
现在我们把注意力转移到窗体窗口左边的控件工具箱窗口,介绍在窗体上生成其它对象的方法。
第一个↑是选择指针,指示选择状态,其余的控件都是用来生成对象的。
鼠标指向一个控件,停留片刻,就会显示该控件的提示。
注意:
本教程中说的单击、双击都是指鼠标左键的动作;
鼠标右键单击弹出对象的快捷菜单,以后就直接说某对象的右键菜单。
我们可以双击一个控件在窗体中产生一个对象。
如双击A控件产生一个标签,双击ab|产生一个文本框,双击产生一个命令按钮。
我们也可以用先选择一个控件,再在窗体中拖拽出一个大小适当的对象的方法产生对象。
如选择框架控件
,拖拽出一个框架对象(起组合一类对象的作用);
再选择单选控件
,在框架对象内拖拽出一个单选按钮对象,并把这个做法重复两次,使框架内有三个单选按钮。
如图5。
图5生成对象的两种方法
两种产生对象的方法应该以第二种为主,因为拖拽的方法同时也在设计对象的大小,同时也能达到其它的预想目的。
比如,三个单选按钮如果不是用这种方法产生的,很可能不能成为一组单选按钮(运行时每次只能有一个被选)。
反映对象位置和大小的属性有:
Left,左边距;
Top,上边距;
Height;
Width.不过这些在设计时一般都是用鼠标调整(属性值都是数)。
前面我们见过了标题属性,它反映的是显示在对象上的说明文字,属性值是字符串。
现在,标签上的文字,命令按钮上的文字,框架上的文字,单选按钮旁边的文字都是起说明作用的,应该分别都对其Caption属性进行编辑。
BackColor,背景色;
ForeColor,前景色(文字颜色);
BorderStyle,边框样式;
Font,字体(包括字体、字形、字号等)。
这些属性多数对象都有。
文本框在运行时显示的文字是它的Text属性值(字符串)。
标签的背景样式(透明与否)由它的BackStyle属性值反映。
窗体设计是在一定大小下进行的,运行时如果最大化,就会露神,这可以通过它的MaxButton属性(值是逻辑常量)进行控制。
还有同时选择多个对象进行统一的设计与布局(格式菜单)的方法,也是要掌握的。
就这么说了,留给你的工作可不少哟。
请在老师的指导下进行设计吧。
设计的参考目标如图6。
图6首个窗体界面
顺便指出,选择一个属性时,属性窗口底部有关于该属性作用的说明,理解了说明后自己可以试着设计。
工程窗口、属性窗口、窗体布局窗口、控件窗口等辅助设计的窗口,大小可以调整,可以拖到其它地方,不想用时可以关闭,要重新打开它们可以用视图菜单(这属于开发环境安排——视图问题哟)。
小归纳:
把你已经涉及到的对象属性名归纳一下,至少写出它的英文单词、中文称呼,并想想它的作用与值的类型。
第二单元事件驱动
设计3初试事件代码
程序运行时,用户在对象上单击(Click)一下,这叫发生了一个单击事件。
如果你希望这个事件能改变对象的某种状态或进行一项事务处理,就给这个事件编一段过程代码。
在对象的事件过程代码中要涉及对象,就用对象的名称。
对象的名称是对象的内部标识,是对象的第一个属性。
设计者可以按自己的想法去修改它。
我们就先按从简的原则,用汉语拼音缩写去命名代码要涉及的对象,以后再慢慢过渡到比较大众化的规范命名吧。
如我们想动态改变标签和文本框的状态,就把标签对象的名称改为BQ,把文本框对象的名称改为WBK.这时属性窗口的对象选择栏就跟着改过来了。
顺便说一下,对象选择栏中BQLabel、WBK等是什么意思呢?
意思是说BQ是Label类型的对象,WBK是TextBox类型的对象。
英文解释是:
BQ(is)As(a)Label
WBK(is)As(a)TextBox
这也是以后声明变量、对象等的语法哟。
现在来看看在哪儿写对象的事件过程代码。
双击对象,或者在视图菜单中选择代码窗口操作,或者在对象的右键菜单中选择查看代码,都可以打开代码窗口。
图7代码窗口
一段代码是整个应用程序运行过程中的一个子(Sub)过程,所以以Sub开始、以EndSub结束(注意EndSub中间有空格)。
Private(私有的)是对过程作用范围的界定。
写代码,首先要明确是为哪个对象的哪个事件过程而写。
明确了以后,在过程名中就有反映。
如上面的过程名
Form_Load()
就反映出设计者选择的是窗体对象的载入(内存)过程,请注意它的格式。
总之,这里是摆好了架势让你书写过程代码哟。
那我们就在命令按钮问个好的单击事件过程中先写一句代码:
print“Hello,大家好哇!
”,保存,运行,单击命令按钮几次看看。
这样就出现一个要处理的问题:
怎么把窗体上显示的这些字符抹掉?
为此我们再设计一个命令按钮清屏,它的单击事件代码:
Cls.运行看看。
第三个命令按钮换内容,它的单击事件代码:
BQ.Caption=”标签用于说明”
WBK.Text=”内容常有变化”
标签的Caption、文本框的Text是默认属性,这言下之意请老师解释。
老师可以故意出点错,让调试窗口模式出现。
第四个命令按钮退出,它的单击事件代码:
End.
第一、二、三个单选按钮的单击事件代码分别是:
BQ.Font=”黑体”
BQ.Font=”宋体”
BQ.Font=”楷体”
代码中的Font约定指的是FontName(字体)。
表示字体的字符串内容应该是设计字体时能看到的文字原样。
我们再给命令按钮换内容加使命令按钮问个好不可用和清屏不可见的代码:
Command1.Enabled=False
Command2.Visible=False
作为对这些代码的复习,请老师用Rem和半角单引号两种方式给上面的代码段和命令行加注释。
注意两种代码视图。
最后,让我们用文件菜单的“生成工程……”操作把我们的工程编译成可执行文件,并移植到桌面来运行看看吧。
VB的三种工作模式:
设计,运行,调试
代码窗口的两种视图:
单过程,全模块
两种翻译方式:
解释方式,编译方式
过程名的表示格式:
对象_事件()
巩固练习:
把上面的过程代码抄写一遍,并作初步理解。
设计4让界面更生动
在窗体中使用个性化的图片、图形,可以让界面益发生动。
控制图标:
Windows风格的窗体,左上角有一个控制图标。
图标的英文是Icon,这也是窗体的一个属性名。
我们就是用这个属性给窗体换个性化的图标(扩展名为ico或cur的文件)。
窗体背景图片:
通过它的Picture属性装载(图片文件类型很多)。
形象化命令按钮:
如果你想给命令按钮界面加个形象化的小图片,那就把它的Style属性换另一个值,再通过Picture属性装入图片,说明文字(Caption)可以有也可以没有。
图像控件:
英文名为Image的控件,是专门用来加载图片的。
通过Picture属性加载图片,通过Stretch属性处理图片与控件的关系。
使用中你会掌握其中的细节。
图片框控件:
英文名为PictureBox的控件。
它的作用有点象窗体,通过Picture属性装入图片只是它的功能之一。
要使控件自动适应图片,这涉及的是AutoSize属性。
图片框有多种用途,是“窗体中的窗体”。
形状控件:
Shape控件可以通过其Shape属性来设置多种形状的规则图形。
BorderStyle、FillStyle、FillColor等属性基本顾名思义,细节都应该在操作中去掌握。
线段控件:
静态设计主要涉及的属性是BorderWidth、BorderColor,这不用解释吧。
你可以根据以上的介绍自己去设计一个生动的界面。
第三单元输入输出
设计5专用输出窗口
Print实际上是一种输出方法。
事件与方法是对象行为的一种分类,它们的共同点是都对应一段过程代码,不同点在于:
事件要激发,方法供调用。
Print是Form1.Print的省略写法,即调用窗体的Print方法。
难道其它对象也有Print方法吗?
是的,如图片框就有。
Cls也是一种方法。
Print输出的内容,是一个或多个表达式的值。
就是说,Print还有计算功能。
半角的逗号和分号可以用来分隔各个值,它们还有指定显示格式的功能。
细节问题结合实例来解释吧。
新建一个工程,在窗体的通用_声明过程中写上
ConstPi=3.1416‘常量3.1416用Pi来代替
在窗体的单击事件过程中写上
X$=str(Pi)‘把Pi转换成字符串类型,赋给字符串型变量X
PrintPi,X,Fix(Pi),Int(-Pi),‘截断和取整,标准格式,不换行
Print‘专门换行
PrintPi/180;
”----度化弧度的进率,π取”&
X‘紧凑格式,换行
Printrnd,rnd,rnd,rnd,rnd‘随机产生纯小数
运行看看。
关于Print的话题以后还要继续。
下面介绍专用的输出窗口。
在窗体中设计一个弹出信息按钮,一个“接受反馈:
”标签,说明后面的文本框内容。
在命令按钮的单击事件过程中写上代码:
Text1.Text=MsgBox("
信息内容"
,"
窗口标题"
)
其中,MsgBox()是用专用窗口输出信息的函数,小括号中有三项交代,第一项和第三项的用途与形式已说明,第二项取默认的数。
函数有值,这个函数的值取决于用户的响应,由文本框显示。
运行情况如下图。
图8专用输出窗口
单击弹出信息,弹出一个小消息框,消息框中只有一个供用户响应的按钮:
确定按钮。
这就是上面说到的默认形式。
确定按钮已经得到焦点,用户直接回车或用鼠标单击它后消息框就完成使命,消失,同时文本框得到一个反馈值1.
请把代码与其执行效果的对应关系看清楚。
MsgBox()小括号中的第二项决定弹出窗口的结构,根据需要设定。
一般情况是这样的:
需要的按钮
代码中写
返回值
一个确定按钮
0或不写
1
确定和取消按钮
2
终止、重试和忽略
3,4,5
是、否和取消
3
6,7
是和否
4
重试和取消
5
编程的人就是根据返回值来判断用户单击了哪个按钮,以便采取下一步的行动的。
另外,关于随消息显示的符号图标,也数字化了,情况如下:
含义
数值
表示危险
16
表示问号
32
表示警告
48
表示信息
64
怎么用很简单:
把这里的数值和前面的数值加在一起用,如3+16或19.
用二进制表示时,它们各自占位不同,不至于混淆。
这样一搭配,情形可多了,你就试试吧……
这是MsgBox函数。
也有不作为函数的MsgBox语句,与函数不同的仅仅是不要括号,没有返回值。
这样MsgBox语句只用于简单的信息显示。
例如
MsgBox“请注意保存文件,系统即将关闭”
小问题:
1、试总结函数共同的结构特征。
2、函数名大小写有区别吗?
3、MsgBox函数和语句的区别在哪里?
为什么函数要赋值而语句不要?
设计6专用输入窗口
文本框既是输入文本的地方,又是输出文本的地方。
它输入输出的内容,即它的Text属性值,系统是当字符串处理的。
给文本框的PasswordChar属性设定一个字符值,如*,就能使输入的内容不照原样显示。
利用这一点,文本框可以用作密码输入框。
关于文本框的话题以后还要继续。
下面介绍专用输入窗口。
为了更好地理解,我们还是新建一个工程,在窗体上用一个用户输入命令按钮,一个接受输入的文本框Text1。
给用户输入的单击事件写这样的代码:
Text1.Text=InputBox("
输入提示"
"
默认值"
运行时单击按钮,弹出的对话框如下图。
图9专用输入窗口
请把InputBox()函数小括号中的三项与对话框的对应关系看清楚。
默认值是估计用得最多的字符串,可以节省用户的操作时间。
用户完全可以不用它,自己键入一个值,再按确定按钮提交。
在这里,提交的内容被文本框接受。
顺便说一下,输入对话框默认的显示位置在屏幕中心线下约1/3处,这个也可以在InputBox()函数中指定。
窗口运行时可以移动嘛,就忽略它。
如果需要的是数值,原则上应该先用Val()函数将输入的内容转换为数值,再参加算术运算。
这些问题指出来,我们自己可以去验证。
第四单元时钟控制
设计7图像自动展示
有两个图形控件,前面的那个是图片(Picture),后面的那个是图像(image)。
图像控件功能单一些,用于显示指定的图像。
我们先用它吧。
我们可以用画图工具自己制作10张图片(以第一张为基础,变个颜色就行),放在D:
\myvb\tp10文件夹中,并让图片文件名为
0.bmp,1.bmp,2.bmp,……,9.bmp
我们打算用时钟控件来控制这组图像的自动展示,每隔3秒钟换一幅图像,效果如下图。
图10图片展示
1、界面设计。
一个标签,标题为“看我画得好不好”,酌情修饰。
一个图像对象,名称为image1,设计时可以不要图像。
一个时钟对象,名称为Timer1,运行时不会显示。
2、属性设计。
将Timer1的间隔时间属性InterVar的值设为3000(毫秒)。
3、代码设计。
图11图片展示代码
一是在通用过程中声明(全局)变量n;
二是在窗体载入过程中给n赋初值;
三是在时钟对象的Timer过程中给图像对象指定图像文件标识:
Image1.Picture=LoadPicture(App.Path+"
\"
+Right$(Str$(n),1)+"
.bmp"
让n的值变化并对n值的越界进行归零处理:
n=n+1
Ifn=10Thenn=0
这就为3秒钟后的下一次执行这个过程作好了准备。
本来以为把n转换为字符串后就可以和扩展名连接得到文件名了,可是系统总是提示找不到文件,原来是由n转换来的字符串还保留着符号位,所以再取它右边的1个字符。
其余由老师解释吧。
小变通:
1、如果告诉你Enabled属性是反映对象能用与不能用(变灰)的,你能让自动展示停下来(不结束运行)吗?
2、你能设计一个命令按钮,当展示进行时是暂停,当展示暂停时继续吗?
设计8设计自行的车
界面如图。
运行时自行车自动从左到右移动,最后停在窗体右边。
图12自行的车
设计步骤及要点如下:
1、准备一个文件夹,把自行车的图片文件放入其中。
2、新建VB工程,通过工具(菜单)→选项→通用页取消设计网格。
标题改为“自行的车”,底色设置与图片底色溶合。
3、在窗体中用图像控件载入自行车图片,并将其Left属性值设为0,stretch属性值设为True(图片适应控件)。
将窗体宽度设为:
10000+图像控件宽度。
4、在车下面用线段工具画一条水平线(路),其粗细由BorderWidth属性调整。
5、用一个时钟控件,将其InterVal属性值设为100(毫秒),编写其Timer事件代码如下:
Image1.Left=Image1.Left+100‘每次前进100缇
IfImage1.Left>
=10000ThenTimer1.Enabled=False
代码第二句是让自行车适时停下来,其中的帐这样算:
车身长度-图像长度=10000,即车的左边距不超过10000时整个车身还在画面上。
还有个帐:
每次前进100缇还没有跳跃感,每100毫秒(1/10秒)前进一次还没有间断感,10000缇÷
100缇=100(次),走完全程需要10秒钟,给人的感觉不快也不慢。
练习:
设计一个象电影片头字幕那样自下而上的滚动字幕。
设计9左右滚动字幕
就是像密码锁上的数字那样在固定位置实现绕轴滚动似的效果。
想象得到吗?
比如滚动的文字是“热烈庆祝中华人民共和国成立六十周年!
”这可以用一个标签来承载。
把标签的AutoSizi属性值设为True,好让标签大小适应文字。
为了代码书写简洁,把标签的名称改为BQ得了,并请注意标签的Caption是默认属性,字符个数是18。
用一个时钟来控制滚动,时间间隔设为500(半秒)吧。
所谓从右到左滚动,其实是把字符串左边的字符截下来接在右边组成新字符串。
所以时钟的Timer事件代码如下:
BQ=Right(BQ,17)+Left(BQ,1)
运行一下看看。
字形和修饰有粗体FontBold、斜体FontItalic、下划线FontUnderline等,它们可以同时选择,用复选框来控制比较合适。
你可以用一个单选按钮和一个复选框来运行检验一下,单击两次时它们的反应是不一样的:
复选框状态有反复的改变,而单选按钮不是。
所以复选框的单击事件要使用控制语句。
复选框的Value属性值有1(被勾选)、0(不被勾选)和2(不可选)三个(单选按钮的Value属性值是真和假)。
控制往往是(设复选框的名称为FX)
IfFx.Value=1Then
…
Else
EndIf
这样的结构。
其它诸如控制字体、字号、字的颜色,滚动速度的设计,相反的滚动方向以及任意文本的滚动等,大家自行完成吧。
第五单元文件与表
设计10实现文件浏览
应用程序中常要对文件进行操作,VB也提供了磁盘、文件夹、文件三个列表框控件。
怎么通过设置把它们配合起来使用呢?
可以先把三个对象都建立起来,布好局。
图13文件类控件
1、要想在程序启动时显示的驱动器是D盘,可以在窗体的Load事件中写这样的代码:
Drive1.Drive="
"
2、在磁盘对象的Change事件中写这样的代码:
Dir1.Path=Drive1.Drive
就让磁盘和文件夹联系起来了。
3、在文件夹对象的Change事件中写这样的代码:
File1.Path=Dir1.Path
就让文件夹和文件联系起来了。
4、单独使用某个控件时,主要是用字符串的形式给盘符或路径属性赋值。
5、我们现在向软件学习。
我们想知道,文件控件显示的文件类型由哪个属性决定?
默认的肯定是所有文件,我们就在属性窗口找值为*.*的属性,发现它是Pattern
单独使用文件控件时,Pattern属性的值是通配的文件标识符形式的字符串。
如:
”D:
\Images\*.jpg”
小小思考:
我们现在想在前面设计的基础上加一个文本框,当在文本框内输入文件类型并回车后,文件控件按我们指定的类型显示文件。
该怎么设计?
设计11使用数据库表
对于我们学过VFP的人来说,用VB创建一个数据库并在其中创建数据表并不是太难的事情;
如何让窗体呈现数据表的记录数据也有章可循。
1、创建数据库与数据表
外接程序→可视化数据管理器,打开可视化数据管理器窗口。
在其中,文件→新建,选第一种类型(Access)的数据库,输入数据库名称,选择存储路径(你的工程文件夹)并保存。
这时数据库是空的,我们要在其中建立数据表(表在库文件中)。
在数据库窗口中新建的数据库的右键菜单中选择“新建表”,会弹出表结构对话框,首先输入表名,单击添加字段按钮,在弹出的添加字段对话框中建立一个字段的结构,确定后添加字段对话框关闭,该字段即加入到表结构对话框的字段列表中。
接下来就是输入数据了。
在数据库窗口中的数据库对象下找到新建的数据表对象,双击表名,即进入表记录编辑。
2、利用数据控件联系库与表
数据控件上显示的文字也是Caption值。
Connect属性值指明联接的数据库类型,此处为默认的Access类型。
DatabaseName属性值指定数据库文件名。
Re
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 详细 讲义