vb教程.docx
- 文档编号:9865491
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:58
- 大小:646.51KB
vb教程.docx
《vb教程.docx》由会员分享,可在线阅读,更多相关《vb教程.docx(58页珍藏版)》请在冰豆网上搜索。
vb教程
·启动VisualBasic
VisualBasic,简称VB,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。
无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。
初次和VB碰面,咱们先从制作一个多媒体程序入手吧。
有人问:
“刚学VB就学多媒体编程,对初学者来说是不是难度大了点?
”嗯,的确有点难度。
不过,你并不需要完全看懂我编程的方法,而是通过整个编写过程,来了解一下VB集成开发环境,为今后的学习打下基础。
首先,让我们先启动VisualBasic6.0。
(见图一)弹出“新建工程”对话框,我们选择“标准EXE”。
单击“打开”。
(见图二)
(图一)
(图二)
这时候看到的是VB集成式开发环境,让我们先对它进行一番了解。
(见图三)
(图三)
·左面是VB的工具箱,
里面的各种图标是我们开发程序时经常用到的标准控件。
·正中间是窗体编辑器,又称对象窗口。
我们程序的界面,大部分是在它上面设计的。
·右上方是工程资源管理器,
它能让我们对整个工程进行整体性的管理。
·右中处的是属性窗口,
陈列着程序中所涉及的各种窗体和控件的属性。
·右下方是窗体布局区,
它能够调节程序运行时窗体在屏幕中的位置。
·添加ActiveMovie控件
现在,让我们开始设计程序吧!
首先,在工具箱上添加一个新控件ActiveMovie,这是个能播放多媒体动画的控件。
右键单击工具箱,会弹出一个小窗口,单击部件,(见图一)在屏幕正中会出现一个部件对话框,这里陈列着许多未在工具箱中列出的控件。
我们需要添加一个ActiveMovie控件。
点击滚动条,找到MicrosoftActiveMovieControl,单击复选框选定。
(见图二)
(图一)
(图二)
如果没有发现这个控件,那么单击浏览。
(见图二)选取Amovie.ocx。
单击打开,(见图三)会出现部件对话框,找到MicrosoftActiveMovieControl,单击确定。
(见图二)
(图三)
工具箱上会新增一个小图标,这代表着ActiveMovie控件已经添加。
(见图四)
(图四)
·设置控件的属性
双击工具箱中的ActiveMovie控件图标,将ActiveMovie控件放到正中的Forml窗体(窗体编辑器)中。
(见图一)
(图一)
现在,属性窗口里列出了这个控件的各种属性。
(见图二)我们将改变它的一些属性。
(图二)
·AutoStart 设置为 True
·ShowControls设置为 False
·ShowDisplay 设置为 False
·ShowTracker 设置为 False
点击属性窗口上的下拉菜单,选取FormlForm,再改变一下窗体Forml的属性。
(见图三)
(图三)
·BorderStyle 设置为 0
·BackColor 设置为 黑色
·ClipControls设置为 False
用鼠标将窗体上的ActiveMovie控件调整与窗体同等大小,(见图四)在窗体布局区用鼠标将Forml窗体调整至正中。
(见图五)
(图四)
(图五)
·编写程序代码
下面让我们来编写程序代码吧!
单击工程资源管理器的查看代码按钮。
(见图一)现在出现的是代码编辑器,它又称代码窗口。
我们的程序代码就在这里编写。
(见图二)
(图一)
(图二)
选择Form对象,这个列表框中陈放着本程序的所有对象,称为对象选择框。
(见图三)右边列表框里放着每个对象的各个事件,称为事件选择框。
当在左面的对象选择框选取Form时,事件选择框里的事件相应变为Load。
同时空白处出现了两行代码,它们分别表示子程序Form_Load的首尾两部分,而Form_Load则是当窗体从无到有,即刚调入内存时,所执行的一个子程序。
(见图四)
(图三)
(图四)
我们在这里键入代码:
“ActiveMovie1.”。
这时弹出一个列表框,列出了对象ActiveMovie1的全部属性、方法和事件。
再键入代码“=APP.”在弹出的列表框中选取Path属性。
(见图五)
(图五)
再键入代码“&"\3.mpg"”。
(见图六)3.mpg是一个多媒体文件,它与这个VB程序在同一级目录下,我们将通过所编的程序把它放映出来。
从这次操作可以看出,VB的代码设计器具有提示语法的功能,给程序员带来很大的方便。
(图六)
在对象选择框选取ACtiveMovie1,在事件选择框选取PositionChange,添加代码MsgBox("谢谢观赏!
")(见图七)
(图七)
至此程序编写完毕。
(见图八)
(图八)
·保存与编译
现在存盘。
单击文件,再单击保存工程。
(见图一)有两个文件需要保存,一个是名叫
“工程1.vbp”的项目文件。
单击保存。
(见图二)另一个是名叫“Form1.frm”的窗体文件。
一个VB程序至少包含这两个文件,即项目文件.vbp和窗体文件.frm,缺一不可。
(见图三)
(图一)
(图二)
(图三)
最后,将它编译成可执行文件。
编译的作用是将你编的程序代码翻译成计算机能执行的语言,这样程序就不光是在VB6.0环境中运行了。
单击文件,单击生成工程1.exe。
(见图四)单击确定。
好了,多媒体程序已完成。
怎么样,并不复杂吧。
(图四)
·制作一个屏保程序
上例中的多媒体程序还可以进一步开发,譬如,将它改变成一个你所喜爱的屏幕保护。
其制作的过程也非常简单。
首先要使我们的这个屏保程序的窗体是全屏的。
将Form1的WindowState属性设置为2,它的功能是在程序运行时,使窗体为全屏。
(见图一)
将ActiveMovie1的AutoSize属性设置为True,它的功能是在程序运行时,使窗体为原大。
(图一)
为使在屏幕保护运行中鼠标不可见,需要改动代码。
点击查看代码按钮。
关闭工具箱并将代码设计窗口适当放大,以便输入程序代码。
在通用_声明区键入以下代码:
PrivateDeclareFunctionSetCursorPosLib"user32"(ByValXAsLong,ByValYAsLong)AsLong
OptionExplicit(见图二)
(图二)
在Form_Load中键入代码:
Dimret
OnErrorResumeNext
ActiveMovie1.FileName=App.Path&"\3.mpg"
ret=SetCursorPos(2000,2000)
IfApp.PrevInstance=TrueThen
UnloadMe
ExitSub
EndIf
ActiveMovie1.Left=Screen.Width/2-ActiveMovie1.Width/2
ActiveMovie1.Top=Screen.Height/2-ActiveMovie1.Height/2
(见图三)
(图三)
再键入以下代码:
这代码的功能是防止屏幕保护程序重复执行。
为实现在按任意键或点击以及移动鼠标后退出屏幕保护,我们首先将Form1的KeyPreview设为Ture。
为使按任意键后程序退出,我们在Form_KeyDown中添加代码。
键入end。
为使单击鼠标后程序退出,我们在Form_MouseDown中添加代码。
键入end。
为使移动鼠标后程序退出,我们在Form_MouseMove中添加代码:
Statics_xx,s_yyAsSingle
Dimm_ax,m_ayAsSingle
m_ax=X
m_ay=Y
Ifs_xx=0Ands_yy=0Then
s_xx=m_ax
s_yy=m_ay
ExitSub
EndIf
IfAbs(m_ax-s_xx)>1OrAbs(m_ay-s_yy)>5Then
End
EndIf
为使这段动画能够循环播放,在ActiveMovie1_PositionChange中改变一下代码。
将下面两行用'注释掉。
'MsgBox("谢谢观赏!
")
'EndActiveMovie1.FileName=App.Path&"\3.mpg"
下面将这段代码进行编译。
注意,为使编译出的文件成为屏幕保护程序,要在”工程1"后加上扩展名“.scr”。
(见图四)
(图四)
观看了两个程序的制作过程,我只提出一个很简单的要求,熟悉VB开发集成环境的六个主要部件--工程资源管理器、属性框、窗体布局区、工具箱、窗体编辑器(对象窗口)、代码编辑器(代码窗口)。
它们是开发一个应用程序最常用到的。
我们可以来回顾一下刚才编程序的过程:
首先,程序的外观是在窗体编辑器中设计的,而程序中所用到的各种控件,一般都是通过其左面的工具箱来设计的。
对于控件和窗体,可以在界面设计时从右方的属性框中修改它们的样式。
对于程序的位置,我们可以通过窗体布局区来进行方便预览及设置。
另外,如果一个程序中含有多个窗体或模块,则可以通过右上角的工程资源管理器来对它们进行切换。
编程序必定编写代码,所以要清楚,VB程序代码都是在代码编辑器中来完成的。
可以说,这六个部件相互联系,贯穿于整个VB程序的开发设计。
对于初学者,心中一定要对此有明确的概念。
此外,还要补充一点:
如果某个部件被关闭,可以通过视图菜单来将它打开。
(见图五)
(图五)
·VB窗体的三个基本概念
从我们先前编过的多媒体程可以看出,编VB程序首先要创建一个良好的可视化界面。
而每个程序界面是由窗体(Form)和一些必要的控件元素(Control)构成的。
由于VB属于面向对象编程,所以我们一般将窗体与控件都称为对象。
(见图一)
(图一)
在介绍VB界面设计知识之前,先让你了解一下三个基本概念:
对象的属性、方法和事件。
(见图二)
属性:
指对象(窗体,控件)的大小、颜色、方位等一系列外观或内部构造的特征
方法:
指对象(窗体,控件)所进行的操作
事件:
指对象(窗体,控件)对外部条件的响应
(图二)
现今的Windows视窗操作系统,与以前Dos最显著的区别就是其拥有一个为用户所能接受的图形界面。
在这个可视化的图形界面中,用户能方便地使用多个程序,而这一切就象在针对一个个窗口进行操作。
(见图三、图四、图五、图六、图七)
(图三)
(图四)
(图五)
(图六)
(图七)
在Windows操作系统下,窗体几乎是每个程序的必要部分。
所以我们用VB编程,设计程序的界面第一步要考虑的就是程序的窗体。
让我们看几个不同程序的窗体。
刚才我们所看到五个窗体,大小、颜色、风格各不相同,而它们都能在VB中得以实现。
当我们刚启动一个标准EXE程序后,窗体设计器中会出现一个默认的窗体。
可以发现,它的外观大致与记事本窗口一样,其窗体右上角有三个按钮,分别表示最大化、最小化、关闭。
(见图八)
在左上角有一个图标,单击它会弹出一个控制菜单。
你肯定对这个窗体再熟悉不过了。
再来看看这个窗体,它只有关闭按钮而没有最大化、最小化按钮以及控制菜单。
要做这种窗体,只需将属性窗口BorderStyle的值改为4。
(见图九)
BorderStyle的作用是设置对象的边框样式,对于窗体共有六种样式,下一节我们再来看看到它们的变化。
(图八)
(图九)
再看这个窗体,只有标题栏,而无最大化、最小化、关闭按钮及控制菜单,(见图十)我们可以查看一下现在的ControBox属性。
它的值为False。
这个ControlBox属性表示在程序运行时窗体是否显示控制菜单栏。
(见图十一)
(图十)
(图十一)
让我们将它的属性改为True看看。
此时,窗体的标题栏已大不相同了。
(见图十二)象这个没有标题栏的窗体,其BorderStyle的值为0。
(见图十三)
(图十二)
(图十三)
明白了吧,原来改变属性值后,窗体的外观会起变化。
还不止是外观呢,属性还牵涉到窗体的一些其它性质,它们都在属性窗口中排列。
属性窗口的下方有针对每一种属性的中文解释,使您能很方便地掌握,有空一定要试试哦!
·窗体的常用属性
现在,我列举出了一些窗体的常用属性,请你对它们先进行一下感性认识。
名称是窗体的标识名,代码中称它为Name。
BackColor:
设置窗体背景颜色。
BorderStyle:
设置窗体的边框风格。
(见图一)
要请注意的是,属性值为1-FixedSingle与3-FixedDialog时,窗体外观相同,但功能却不同。
当属性为1-FixedSingle时,MaxButton与MinButton这两个属性可以起作用。
MaxButton为True时窗体上具有了最大化按钮。
MinButton为True时最小化按钮也有效了。
而当属性为3-FixedDialog时,MaxButton与MinButton属性不起作用。
此时MaxButton与MinButton为True,但最大化、最小化按钮均为出现。
(图一)
Caption:
设置窗体标题栏上的文字。
ControlBox:
设置窗体标题栏上是否具有控制菜单栏及按钮。
Enabled:
决定运行时窗体是否响应用户事件。
在程序运行时可以看到改变Enabled属性的效果。
此时Enabled已设为False,所以点击按钮不会有反应。
Height:
设置窗体的高度
Width:
设置窗体的宽度
Left:
设置程序运行时窗体的水平位置
Top:
设置程序运行时窗体的垂直位置
Visible:
设置程序运行时窗体是否可见。
当Visible为False时,窗体是不可见的。
将值改为为True。
运行时窗体就是可见的了。
WindowsState:
设置程序运行中窗体的最小化、最大化和原形这三种状态。
程序运行时的最小化状态。
Icon:
设置窗体标题栏上的图标。
Picture:
给窗体配上漂亮的位图。
最后要说明的是:
窗体的Name和Caption属性,虽然缺省值相同,都是Form1,但实际意义却不一样。
Caption指的窗体标题栏上的文字,Name指这个窗体的对象名,千万不能混淆。
·多媒体程序回顾
这么多属性,你不可能一下子记住。
死记硬背并不是学习VB的好方法。
下面我们就用以前做过的多媒体程序来作个例子,谈一谈窗口属性的用法。
(图一)
现在回顾一下以前做过的多媒体程序。
(见图一)它没有最大化、最小化、还原、关闭按钮和工具栏。
这时BorderStyle属性应为几?
答对了,为0。
再来看一下窗体的颜色。
它的背景为黑色。
我们可以在BackColor属性中进行设置。
如果我们在设置BackColor时,调色板中没有所期望的颜色,则可以通过视图->调色板进行选择。
由于这个程序在运行时为原形状态,它的WindowState属性当然应为0-Normal,不过这是默认值,无须改动。
但如果要将此程序为屏保,则窗体的WindowState就要做改动了。
知道了吧,做屏保时,它的值为2-MaxMized了,因为屏保都是全屏的。
由于程序启动,窗体的默认位置一般为屏幕的左上角,而我们一般希望程序的窗体出现在屏幕的正中位置,所以咱们讨论一下此程序的Left和Top属性。
Top和Left属性可以改变程序运行时窗体在屏幕中的位置。
我们可以设置相应的数值,另外也可以通过窗体布局区来改变窗体的位置。
好了,我们这个程序的窗体设计,已经完成。
你看,它只修改了窗体的几个属性,而其它的一些属性都为默认,我们无须去改动。
一些大型Windows程序,都是由许多窗体构成的。
在标准 EXE环境中,我们只可以看到一个默认的Form1窗体,要添加窗体,可以在工程->添加窗体中进行。
(见图二)
(图二)
现在我们添加了一个窗体,它的默认名称为Form2。
如果要将这个窗体删除的话,可以在工程资源管理器的Form2图标上单击右键。
单击移除Form2。
(见图三)
(图三)
嗯,移除窗体我们了解了,那么怎样添加其它属性的窗体呢?
这些窗体都有它们各自的功能。
譬如那个“日积月累”窗体,就能做一个Windows下标准的“日积月累”。
我们可以直接点击添加窗体按钮。
选取并打开“日积月累”,这样就添加了“日积月累”窗体,它的默认名称是frmTip。
(见图四)而我们编程人员所要做的,只是修改其中的一些代码,使其为我所用。
可以说,这个“日积月累”的90%,VB已帮我们完成了。
(见图五)
(图四)
(图五)
在这一课中,我们介绍了Windows操作系统下窗体的概念,以及用VB开发窗体时所用到的一些常用属性,它们有:
Name,BackColor,BorderStyle,MaxButton,MinButton,Caption,ControlBox,Enabled,Height,Width,Left,Top,Visible,WindowState,Icon,Picture。
这些属性,分别控制着窗体的形状,大小,位置,以及在设计和程序运行中的不同状况。
在了解这些属性时,我们可以根据属性框下的中文说明进行学习。
另外,还要能熟练地在属性框中进行设置属性值,这是学好VB编程的第一步。
·日积月累与小测试
在我们的程序代码设计中,可以用'号或Rem语句来使某句代码被注释而不起作用。
(见图一、图二)
(图一)
(图二)
它的好处可多啦:
当我们认为程序中的某段代码必须删除时,先别忙着删,我们可以将它注释掉。
这样一旦又需要这段代码时,还可以很方便地将它恢复。
当我们设计了一个很大的程序后,要对它进行重新修改,则会很费事,因为将很难再看懂自己曾经编过的代码。
这时候,我们就运用注释语句来注释一下吧。
小测试:
1 窗体有几种类型(BorderStyle)?
A 8 B 5 C 7 D 6
2 一个VB源程序,最起码由哪些文件组成?
A frm文件 B vbp文件 C frx文件 D vbg文件
3 要使窗体在运行时最大化,应设置其什么属性?
A StartUpPosition B Visible C WindowState D BorderStyle
4 做一个没有控制菜单栏的窗体,应设置什么属性?
A Enabled B MinButton C MaxButton D ControlBox
5 如果要使某句代码不起作用,可以在该代码前加上什么?
A Echo B :
C Rem D '
答案:
1 (D)
窗体的BorderStyle属性共有六种风格,它们几乎概括了Windows下所有程序的窗体的外观风格。
2 (AB)
frm文件是窗体文件,是一个VB源程序所必须拥有的,vbp文件是项目文件,是VB源程序所必备的文件。
3 (C)
WindowState属性设置程序在运行时窗体的可视状态,它有最大化、最小化、原型三种状态。
4 (D)
ControlBox属性,指示在运行时控制菜单栏是否在窗体中显示。
5 (CD)
在'和Rem关键字后的代码都为注释语句。
你都回答对了吗?
好,让我们牢记这些基本概念吧。
·可人机对话的TextBox
(图一)
TextBox控件,又称文本框控件,(见图一)它被用来显示用户输入的信息,是Windows操作系统下进行人机对话的常用元素。
所谓人机对话,就是计算机能获知用户给它的信息,同时,它也能作出相应的反馈,对于前者,我们除了用鼠标向计算机发出命令外,也常需要以键盘向计算机输入一些内容,如键入用户的姓名、年龄、性别等。
在VB编程中,一般都是以文本框控件来实现,即用户输入的信息,都是放入文本框中的。
文本框的形式有多种,如著名游戏“红心大战”中,有个让你输入名字的框,这是一个标准的文本框控件,再适当改变其大小,而无需改动其他属性。
(见图二)
(图二)
(图三)
你常常可以遇见这样的文本框--密码对话框。
它也属于文本框,不同的是,在此框中输入文字时,会被“*”代替,起到了保密的作用。
(见图三)
做这种密码的对话框很简单,你所要做的只是:
将属性PasswordChar改为“*”。
怎么样,一个和Windows同样外观的密码框已轻松制成,若再添加一些必要的代码的话,就可以完成一个真正的密码程序了。
(见图四)
(图四)
我们先来看一个“芝麻开门”的程序。
(见图五)密码是什么呢?
(见图六)还是先把名字改了……。
哈哈,知道了!
(见图七)
(图五)
(图六)
(图七)
在这个小程序中,有两个文本框控件,可以看出它们的功能是不同的。
上面的文本框能供用户输入名,也就是输入正常的文字。
当用户将鼠标移至此控件时,它能显示一段文字。
关于这一点,我们可以看一下它的ToolTipText属性。
(见图八)这个文本框,提供了输入加密文字的功能。
我们查看它的PasswordChar属性的内容是一个星号。
(图八)
·TextBox的常用属性
TextBox的常用属性有:
Text:
设置控件中的文本。
MultiLine:
设置控件是否可以接受多行文本。
ScrollBars:
设置控件是否具有水平或垂直滚动条。
(但当MultiLine属性为False时,它是不起作用的。
)
Alignment:
设置控件中文本的对齐方式。
PasswordChar:
以特定的字符来代替控件中的文本字符,这个属性很适合设置密码对话框。
Locked:
设置文本框内容在运行时是否可以被用户编辑。
设置True时,不能编辑。
ToolTipText:
设置汉用户将鼠标移至该控件时,所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 教程