VB6.0基础入门教程

上传人:仙*** 文档编号:127123936 上传时间:2022-07-29 格式:DOC 页数:88 大小:288KB
收藏 版权申诉 举报 下载
VB6.0基础入门教程_第1页
第1页 / 共88页
VB6.0基础入门教程_第2页
第2页 / 共88页
VB6.0基础入门教程_第3页
第3页 / 共88页
资源描述:

《VB6.0基础入门教程》由会员分享,可在线阅读,更多相关《VB6.0基础入门教程(88页珍藏版)》请在装配图网上搜索。

1、VB最简朴入门教程目 录(提示:按ctrl,并单击鼠标,可以跳到相应页)1.1 1 我们需要什么31.2 2 第二章:事件、属性及数据类型31.3 3 第三章:VB语言61.4 4-1第四章按钮(一)121.5 4- 第四章按钮(二)1991.6 5 第五章菜单271.7 6-1第六章输入(一)341.8 6-2第六章输入(二)421.9 6-3第六章输入(三)521.10 7第七章输出59附录632.1 VB教程631.1 1我们需要什么我们需要什么?当我们在一种精彩的游戏世界中游历了一番之后,或是惊叹于某一工具软件的小巧精致之余,多少总会产生些许编程的冲动。编程吗,在此前如果你对电脑还是一

2、种门外汉,那实在是一件可望而不可及的事情。如果运用基于DOS下的编程语言,譬如C、Qbasic、Pascal等等,真不知何年何月才干有所成就。编程是需要天赋的,你必须在大脑中对整个程序有一种清晰的轮廓,一种高效的流程,这并不是每个人都能做到的,你必须思之慎之,这也使编程变成一件最枯燥无味的事情。但在第四代计算机语言(可视化编程)浮现后,可以确切的说它开发了人们的更多天赋,并不局限于那些头脑异常清晰的人,每一种人都可以发现自己也可以编出某些从前不敢问津的程序,想象力的充足发挥才是第四代语言的精粹。Visual Basic(如下简称VB)可以说是可视化语言的先驱了,并且它也是可视化限度最高的一种,

3、从几年前VB诞生之日起到目前,它已经经历了五个版本,并且目前微软正在紧张的进行着VB6.0的研制、测试,这样高的更新率,不外乎阐明两个问题:顾客对VB的热衷,微软对VB的注重。不可否认微软对市场的预测能力是极为高明的,而它强大的技术、财力支持也使它在许多此前未进入的领域,在不长的时间内有成为最有力的竞争对手,如IE之于浏览器领域,帝国时代之于游戏都是最佳的例证。对于VB目前也有一种很强的竞争对手Delphi,有人把它称作VB杀手,这显然有偏激之处,VB的确有它的局限性之处,但Delphi又何尝不是呢,并且以微软对VB的倾心,VB的功能必然会越来越强大。VB的诞生VB的浮现可以说是Microso

4、ft Windows的日渐成熟的必然产物。Microsoft Windows为程序员和最后顾客提供了一种共同的人机界面。对顾客,Windows提供了一种图形鼠标的操作环境,该环境对所有的应用程序都同样;对于程序员,Windows提供了一组预定义工具-称之为Microsoft Windows 的软件开发工具箱(SDK),该工具能使程序员建立一种与Windows界面相似的应用程序,并且,程序员不必关怀最后顾客的硬件配备状况。在这一开发环境中,程序员唯一困难的是Microsoft SDK提供了六百多种函数和与其一致的事件驱动(event-driven)编程技术。两种新措施的交叉使众多的程序员重新陷入

5、困境,程序员不仅要掌握程序驱动编程技术和六百多种函数的功能,并且还得用C语言描述这些问题。因此一般状况下,程序员一方面要掌握C程序设计技术,而后再开始学习SDK。这样的条件下就规定在Microsoft多任务环境下浮现一种操作以便,使用简朴的新工具Visual Basic由此诞生。 何为可视 英文Visual的意思是“视觉的”,“可视的Baisc”这个名字也许抽象了点,但事实上它却是最直观的编程措施,之因此叫做“可视”,你只要看到VB的界面就会明白,事实上你无需编程,就可以完毕许多环节。在VB中引入了控件的概念,在Windows中控件的身影无处不在,多种各样的按钮、文本框、无线钮,都是控件的种类

6、,VB把这些控件模式化,并且每个控件均有若干属性用来控制控件的外观,工作措施。这样你就可以象在画板上同样,随意点几下鼠标,一种按钮就完毕了,这些在此前的编程语言下是要通过相称复杂的工作的。1.2 2第二章:事件、属性及数据类型后来两章也许会比较枯燥,但不可否认也很重要,所觉得了学好VB,我们一定要打好基本才行。一、事件通过上一章的例子,你也许对“面向对象的编程”已有了一定理解,它是由事件驱动的,对于不同的对象,所能感应到的事件也会不同,譬如说当你把鼠标移进某一区域时就会触发MouseMove事件,这很直观,也容易理解,但也有些事件比较抽象,下面我来对一般的事件进行一下解释。1. 窗体和图象框类

7、事件 Paint事件:当某一对象在屏幕中被移动,变化尺寸或清除后,程序会自动调用Paint事件。注意:当对象的AutoDraw属性为True(1)时,程序不会调用Paint事件。 Resize事件:当对象的大小变化时触发Resize事件。 Load事件:仅合用于窗体对象,当窗体被装载时运营。 Unload事件:仅合用于窗体对象,当窗体被卸载时运营。 2.目前光标(Focus)事件 GotFocus事件:当光标聚焦于该对象时发生事件。 LostFocus事件:当光标离开该对象时发生事件。 注意:Focus英文为“焦点”、“聚焦”之意,最直观的例子是,例如有两个窗体,互相有一部分遮盖,当你点下面的

8、窗体时,它就会所有显示出来,这时它处在被激活的状态,并且标题条变成蓝色,这就是GotFocus事件,而相反,此外一种窗体被遮盖,并且标题条变灰,称为LostFocus事件。上面所说的“光标”并非指鼠标指针。 3.鼠标操作事件 Click事件:鼠标单击对象。 DbClick事件:鼠标双击事件。 MouseDown、MouseUp属性:按下/放开鼠标键事件。 MouseMove事件:鼠标移动事件。 DragDrop事件:拖放事件,相称于MouseDown、MouseMove和MouseUp的组合。 DragOver事件:鼠标在拖放过程中就会产生DragOver事件。 4.键盘操作属性 KeyDow

9、n、KeyUp事件:按键的按下/放开事件。 KeyPress事件:按键事件。 5.变化控制项事件 Change事件:当对象的内容发生变化时,触发Change事件。最典型的例子是文本框(TextBox)。 DropDown事件:下弹事件,仅用于组合框(ComboBox)对象。 PathChange事件:途径变化事件,仅用于文献列表框(FileBox)对象。 6.其她事件 Timer事件:仅用于计时器,每隔一段时间被触发一次。 二、属性 每个对象均有它的属性,并且“Name”属性是共有的,有了“Name”属性才可以在程序中进行调用。对于属性,可以在窗体的布局操作中完毕,也可以在程序运营中变化,这取

10、决你的需要,但有些属性是只读的,它只能在控件布局时变化。我将在后来的实例中具体简介各个属性的作用。 三、数据类型 学过编程的人都懂得大多数的计算机语言都规定了各自的数据类型,VB也不例外。其实,在一种最简朴的程序中数据类型是可以不作规定的,也就是说,变量可以使用多种类型,但是在一种复杂的程序里,这样做就很危险,由于很也许给同一种变量赋予了不同的类型,而导致程序出错。因此,为了程序的严谨和便于查看,对的的定义数据类型是必要的。定义数据的另一种因素是,不同的数据占用不同的内存数量,譬如整型(Interger)数据占2字节,而长整型数据占4个字节,定义合适的数据类型,不管你相信不相信,它可以节省内存

11、!1. VB常用的数据类型有:整型(Integer,表达-32768至32767之间的整数)、长整型(Long,表达-2,147,483,648至2,147,483,647之间的整数)、实型(Single,表达-3.37E+38至3.37E+38之间的实数)、双精度实型(Double,表达-1.67E+308至1.67E+308之间的实数),字符(String,每个字符占一字节,可以储存065,535个字符),布尔(Boolean,只有两个值True/-1,或False/0)。 2. 数据类型的定义措施: 定义变量最简朴的措施是用“Dim”核心字,它的语法: Dim 【变量名】As 【数据类型

12、】如:Dim Index As Integer也可以在一行中定义多种变量,如:Dim Index As Integer , Dim Number As Long把多种变量定义成同一类型可以写成:Dim Index , Number As Integer 更可以在定义时进行初赋值:Dim Index=有时为了简便,也以符号进行简朴的定义,作用是和上面同样的。整型可以用“%”替代,长整型可以用“&”替代,实型可以用“!”,双精度实型可以用“#”定义,如刚刚的第一种例子可以写成:Dim Index% 等价于 Dim Index As Integer 对于常量的定义用Const定义,如:Const C

13、OLOR=。 为了在程序中便于查阅,我们对变量和常量的写法进行规定,变量一般用小写方式,常量则所有大写。注意:使用常量的好处,对于程序中常常浮现的数值,应设常量等于它,这样一是书写以便,其二,如果要变化该数值,只需变化定义常量的语句值,而不需变化每个语句,提高了效率。 数组的定义类似于变量定义,所不同的是数组需要指定数组中的元素个数,例如: Dim IntegerArray(99) As Integer这个数组中涉及100个元素,脚标从0到99。也可以指定脚标的起始值,例如:Dim IntegerArray(2 to 10) As Integer这个数组具有九个元素,脚标从2到10。还可以定义

14、多维数组:Dim ThreeD(4,2 to 5,3 to 6) As Integer上例定义了一种三维数组(444)。 记录的定义 记录定义是把控制权交给顾客的措施,它让顾客可以定义自己的数据类型,它使用核心字“Type”,措施是:Type 【数据类型标记符】 As As As End Type例如,定义一种地址数据:Type AddressStreet As StringZipCode As StringPhone As StringEnd Type这个地址数据里涉及三个属性,街区、邮政编码和电话,可以把某数据定义成此类型:Dim MyHome As Address要调用或变化“MyHom

15、e”的值时,类似于对对象的属性的操作:变量名.域名“”为了简化书写反复的部分,可以用核心字“With”:With MyHome.Street=阜成路”.ZipCode=.Phone=End With1.3 3第三章:VB语言本章提纲: VB语法与Basic的异同 注释语句 长语句的分行 条件语句 循环语句 运算操作 数据定义与赋值 函数和过程 一、VB与Basic VB之因此叫做“Visual Basic”就是由于它使用了Basic语言作为代码,因此它们之间有着千丝万缕的关系,如果学过Basic的话,看到VB的程序构造会感到很亲切。但VB作为新生物,也超越了Basic的限制,有了许多自己的特点

16、: VB建立了一种新的变量类型货币型变量,通过使用仅带有二位小数的货币变量,就能避免因使用实型变量而带来的数值积累误差问题。 VB在调用函数(Function)时,必须在函数名后跟一对括号。 VB对白兰地使用范畴重新做了规范,在Basic里把隐含变量都当作全局变量,而在VB里对隐含变量都当作局部变量。 VB里的阐明语句(Declare),仅支持动态链结库(DLL)的子程序和无变量函数。 使用数组,必须事先用Dim或Redim进行定义。 二、注释语句 在使用注释语句之前必须先理解注释的作用,注释不仅仅是对程序的解释,有时它对于程序的调试也非常有用,譬如说可以运用注释屏蔽一条语句以观测变化,发现问

17、题和错误。后来注释语句将是我们在编程里最常常用到的语句之一。在VB里,注释语句有两种,一种是用“Rem”核心字,这跟DOS里的批解决文献的用法同样,尚有一种是运用单引号“”,例如:Dim a As String 与Rem Dim a As String 的作用是一致的。三、长语句的分行 在比较早的版本中,由于没有象C等语言用“;”隔开语句与语句,VB的语句是必须写在一行里的,但是后来版本的VB里如许用分行符“_”把一种长语句提成若干行来寄存。四、条件语句如果你学过任何一种编程的话,都会懂得在程序里控制其流程的有两种语句,条件与循环,VB自然也不例外,其实不管哪种语言,条件和循环的样子都差不多,

18、只但是各有各的规矩罢了。在条件语句里,我们先来学习“IfThen”语句。它的一般语法是:If Then End If与C 语言不同,VB的条件语句更符合英语的语法,如果Then背面所跟的语句只有一条,可以写成:If Then 而不用End If。有时我们还会用到If Then Else End If更可以在Else里在嵌套If语句,如:If Then Else If Else End If所有这些可以用一种表格表达:条件1 True False 语句1 条件2 True False 语句2 条件3 True False 条件N True False 语句N 语句N1 用了过多的Else后你会感

19、到很不以便,并且程序构造也不清晰,因此大多数的语言尚有Select语句协助解决这个问题。VB里的Select语句的格式是这样的:Select Case Case Case Case Case Else End Select例如:Select Case a%Case 1 Print “a=Case 2 Print “a=Case Else Print “a does not equal to 1 or 2.”End Select五、循环语句循环构造是计算机语言里一种重要的构造,它的应用广泛,最简朴的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件事反复指定的次数,这样就不用把要反复的语

20、句输入多次,而通过循环构造完毕,非常以便。C语言里有一种“for”循环语句,VB里也有“For”核心字,作用也差不多,只是VB的“For”语句更容易理解。它的格式是:For = To Step Next 在默认状况下,Step被设为“1”,可以省略,Step也可以设为负值,例如:Dim a=For I=1 To 10 a=Next I这是一种最简朴的累加器的例子,把1到10累加在一起,然后赋值给“a”这样的效果和上面是同样的,只但是是倒着加罢了,请看:Dim a=For I=10 To 1 Step 1a=Next IWhile语句也是一种很常用的循环语句,它的形式诸多。 Do While L

21、oop语句 While Wend 语句 Do Loop While While背面都跟逻辑条件判断,“Do While Loop语句”和“While Wend 语句”作用相似,都是先判断While背面的条件与否为“真”,如果为“真”则执行里面的语句,如果为“假”,则退出循环,循环直至条件为“假”终结。“Do Loop While ”与前两者的区别在于,它不管条件的真假,都会先执行“Do”背面的语句,也就是说,它至少执行语句一次。与While用法相似的尚有Until语句,它是直至条件为真则终结循环,句式把While上述三个语句的While换成Until即可,但是由于容易记混,因此我建议只用Whi

22、le即可。Until 可以相称于While Not 。For循环和Whlie循环应当根据合适的环境使用,它们有时也可替代。六、运算操作1. 数学运算 :加法运算,也适合于字符串的之间的合并运算。 :减法运算。 *:乘法运算。 /:除法运算。 :整除运算。 Mod:求余运算。例如:a Mod b表达a被b整除后来的余数。 :幂运算。AB表达以A为底的B次方。 1. 关系运算 关系运算也称比较运算,它表达不等式的真或假,VB共提供六种运算符,分别是=2. 逻辑运算 逻辑运算是对真或假的运算,我将列表阐明:A B Not A非 And与 Or或 Xor异或 Eqv相等 Imp蕴含 T T F T T

23、 F T T T F F F T T F F F T T F T T F T F F T F F F T T TTrue FFalse七、 数据与定义本标题的内容已经在上一章向人们详述过,在这里就不再反复。八、函数与过程 函数与过程有许多相似的地方,它们之间最大也是最本质的区别就在于,函数有一种返回值,而过程只是执行一系列动作,因此可以简朴的把函数理解成为一种变量,而VB中的每个事件都是一种过程,例如Command1_Click()就是一种过程。由于在程序设计中常常会有反复的地方,因此把它做成一种函数或一种过程,在使用时进行调用,可以节省大量的输入代码的时间,并且使用函数和过程也便于程序的构造

24、化和修改查看。函数和过程都可以有参数,也可以没有参数。有关函数和过程将在后来的章中配合实例解说,请您继续VB教程。1.4 4-1第四章按钮(一)从本章开始我们将正式进入VB的编程世界,但这还仅仅是个开端,要编出功能强大的软件,还要学诸多东西,那就要看后来的VB高档教程了,我也得努力学啊!按钮是我们在Windows操作见到最多的控件,它们有着多种各样的功能:“确认”、“取消”、“下一步”等等,这些都是按钮的体现,此外尚有诸多图形化的按钮,其实它们并没什么不同,所有的按钮都是通过单击(click)事件实现的,只但是是在外表不同罢了。下面就让我们建立一种最简朴的按钮,双击工具箱的CommandBut

25、ton,将在窗体上建立一种形如图41的按钮,它的缺省名(Name属性)为Command1,我们可以把它改名为cmdExit,把Caption属性设为“退出”,然后双击,按钮填写代码:Private Sub cmdExit_Click()Unload MeEnd Sub按下F5或者工具条上的播放按钮,运营程序。图42当你按下退出按钮的时候,就会自动退出程序,因素是当你单击按钮时激活了它的Click事件,执行“Unload Me”语句,使得窗体被卸载。 上面举了一种比较简朴的例子,下面的例子稍微复杂些: 新建窗体,控件布局如图43所示,涉及一种List控件,一种Text控件和两个按钮(Comman

26、d1和Command2),(比较简朴的程序我们都采用缺省名),对它们属性做如下修改:List1 Caption“请输入你的名字” Text1 Text“”(空字符串) Button1 Caption“复原”EnabledFalse Button2 Caption=“清除” 把使用Button1的Enabled属性设为False(假),是使程序在初始时,无法单击Command1。按F5,运营程序,图44,复原按钮成为灰色,不可选。固然目前程序还什么也不能做,下面我们在程序中添加代码:一方面在General里声明全局变量:Dim StoreString As String 用来储存字符串注意:为什

27、么用全局变量?VB里每一种小过程都相称于一种程序,程序里的变量称为局部变量,是只能在程序内部使用的,而当程序调用结束后,由于从内存中被清除,因此变量储存的值也就消失了,这里的全局变量是用来在过程中传递字符串。接着填写如下代码:Private Sub Command1_Click()Text1.Text = StoreStringCommand1.Enabled = FalseEnd SubPrivate Sub Command2_Click()StoreString = Text1.TextText1.Text = 清除Command1.Enabled = TrueEnd Sub运营程序,如图

28、45。按下“清除”,文本框被清除,按下“复原”,文本有被恢复,许多程序中的Undo/Redo就是运用这个原理实现的,目前懂得为什么内存越多越好了吧。我们在把程序修改一下,把Button2删除,Button1的Enabled属性改为True,Caption改为“清除”,填写代码:Private Sub Command1_Click()If Command1.Caption = 清除 ThenStoreString = Text1.TextText1.Text = 清除Command1.Caption = 复原ElseText1.Text = StoreStringCommand1.Caption

29、 = 清除End IfEnd Sub同样可以上面的功能,但是却少用了一种控件,控件使用少的程序启动会快些。 下面的例子要更加复杂些,人们一定都用过Windows附件中的计算器,它是一种原则的科学计算器,运用VB我们也可以做到,只是没有那么复杂,四则运算而已。 先建立一种新的项目文献,里面涉及一种Form1的窗体。然后,添加控件,涉及一种Text框(Text1),和17个按钮,这17个按钮使用的名称都是Command1,只是Index属性不同,就好象一种数组,创立一组按钮的措施是,先在窗体上建立一种按钮(Command1),然后在Command1上击鼠标右键,选择复制(Copy),然后在窗体上任

30、意部位击右键,选择粘贴(Paste),系统会提示与否创立控件组,选择“是”,反复上面环节,直至创立17个按钮为止。各控件属性如下表:Text1 BackColor&H00C0FFFF&Text“0.” Command1 Index 016Index 09 Caption=Index 10 Caption=Index 11Caption=Index 12 Caption=Index 13 Caption=Index 14 Caption=Index 15 Caption=Index 16 Caption=“清除” 如果想变化某些其她的属性,例如字体,可以自己定义一下Font属性,如果相对多种控件

31、的共同属性进行变化,可以在窗体上按下鼠标,拖动,把多种控件一起选定,然后对它们的共同属性进行修改。别看这个东西小,还费了近我两个小时呢,不觉大叹手生,里面也有些地方很绕弯子,我尽量解释清晰。在编写程序之前,我们先来回忆一下计算器的使用。1. 按下数字键在液晶屏上会浮现数字,这是最基本的功能。 2. 第一次按下运算键,再按下数字键,将重新输入第二个数字,再次按下运算键,将算出前两个数的成果,然后按下数字键,将又重新输入新的数字。 3. 输入数字后,按下“等于键”将仍输出本来的数字,输入运算符和第二个数字后在按下“等于”,将得到两者的成果。然后又反复第二、三步。 4. 按下“清除”,数据被所有清除

32、。 理解了这些,我们一步一步实现。 先实现数据的输入,请看代码。 与未创立组的控件相比,它的事件里多了Index参数,组里所有的对象都使用同一种事件。先在General里声明窗体级全局变量:Dim Num1, Num2 As SingleDim StrNum1, StrNum2 As StringDim FirstNum As Boolean 判断与否是数字开头由于Text1里是寄存字符串的,因此要把输入的数据进行运算,必须把字符型变量转变为实型变量,分别用Num1、Num2和StrNum1、StrNum2进行寄存。在Form_Load事件里给变量初赋值:Num1 = 0Num2 = 0Str

33、Num1 = StrNum2 = FirstNum = True由于17个按钮使用的是同一事件,因此我们用一种Select Case语句辨别各个按钮,双击任意按钮输入代码:Private Sub Command1_Click(Index As Integer)Select Case IndexCase 0 To 9If FirstNum ThenStrNum1 = Str(Index)实型转字符型FirstNum = False初赋值为假Else非初赋值StrNum1 = StrNum1 + Str(Index)End IfText1.Text = StrNum1显示End SelectEnd

34、 Sub运营程序的话已经可以输入数据,下面我们来解决小数点。在General里声明新的变量:Dim PointFlag As Boolean 判断与否已有小数点我们懂得小数点只能输入一次,一种数据中不能有多种小数点存在,因此需要一种布尔变量做判断。在Form_Load里进行初赋值:PointFlag = False在Command的单击事件里接着上面输入新的代码:Case 10If Not PointFlag Then如果没有小数点If FirstNum Then如果是第一种字符StrNum1 = 0.FirstNum = FalseElseStrNum1 = StrNum1 + .End I

35、fElse已有小数点Exit Sub则退出单击事件End IfPointFlag = TrueText1.Text = StrNum11.5 4-2第四章按钮(二)下面会复杂某些,我们先跳过等号,而来解决四则运算:先在General里声明新变量:Dim Runsign As Integer 储存运算符号Dim SignFlag As Boolean 判断与否已有运算符号然后在Form_Load中进行初赋值:Runsign = 0SignFlag = False在接下的Command1_Click中继续输入代码:Case 12 To 15FirstNum = True使下一次可以输入新数据Poi

36、ntFlag = False还原标记值If SignFlag Then前面已有运算符未运算Call RunElseSignFlag = TrueStrNum2 = StrNum1把字符串1复制给字符串2StrNum1 = 字符串1清空End IfRunsign = Index - 11 储存键入的运算符里面运算的部分我用了一种过程,是由于在按下等号时还会调用到运算过程,这样可以减少代码的输入,也使程序便于浏览。建立过程(Procedure),可以在General部分直接输入,也可以通过菜单里的“Add Procedure”添加。Run的代码如下:Sub Run()Num1 = Val(StrN

37、um2)Num2 = Val(StrNum1)Select Case RunsignCase 1加equal = Num1 + Num2Case 2减equal = Num1 - Num2Case 3乘equal = Num1 * Num2Case 4除equal = Num1 / Num2End SelectStrNum2 = Str(equal)StrNum1 = StrNum2Text1.Text = StrNum2End Sub 下面是其他的代码:(在Command1_Click事件里,接着写) Case 11If Not SignFlag ThenText1.Text = StrNu

38、m1equal = Val(StrNum1)FirstNum = TruePointFlag = FalseElseCall RunSignFlag = FalseEnd IfCase Else清除按钮Call ClearData里面又用到了一种ClearData过程,事实上就是Form_Load里的变量初赋值,代码如下:Sub ClearData()Num1 = 0Num2 = 0StrNum1 = StrNum2 = FirstNum = TruePointFlag = FalseRunsign = 0SignFlag = FalseText1.Text = 0.End Sub这样完整的程

39、序就完毕了,本章简介了VB的第一种控件按钮,并且举例,但愿你继续看下一章菜单。 下面给出完整的程序代码: Dim Num1, Num2 As SingleDim StrNum1, StrNum2 As StringDim FirstNum As Boolean 判断与否是数字开头Dim PointFlag As Boolean 判断与否已有小数点Dim Runsign As Integer 储存运算符号Dim SignFlag As Boolean 判断与否已有运算符号Sub ClearData()Num1 = 0Num2 = 0StrNum1 = StrNum2 = FirstNum = T

40、ruePointFlag = FalseRunsign = 0SignFlag = FalseText1.Text = 0.End SubSub Run()Num1 = Val(StrNum2)Num2 = Val(StrNum1)Select Case RunsignCase 1equal = Num1 + Num2Case 2equal = Num1 - Num2Case 3equal = Num1 * Num2Case 4equal = Num1 / Num2End SelectStrNum2 = Str(equal)StrNum1 = StrNum2Text1.Text = StrNu

41、m2End SubPrivate Sub about_Click()MsgBox Create by 周晓阳。1998/7/27, vbDefaultButton1, VB教程第四章范例End SubPrivate Sub Command1_Click(Index As Integer)Select Case IndexCase 0 To 9If FirstNum ThenStrNum1 = Str(Index)FirstNum = FalseElseStrNum1 = StrNum1 + Str(Index)End IfText1.Text = StrNum1Case 10If Not Po

42、intFlag ThenIf FirstNum ThenStrNum1 = 0.FirstNum = FalseElseStrNum1 = StrNum1 + .End IfElseExit SubEnd IfPointFlag = TrueText1.Text = StrNum1Case 12 To 15FirstNum = TruePointFlag = False还原标记值If SignFlag ThenCall RunElseSignFlag = TrueStrNum2 = StrNum1StrNum1 = End IfRunsign = Index - 11Case 11If Not

43、 SignFlag ThenText1.Text = StrNum1equal = Val(StrNum1)FirstNum = TruePointFlag = FalseElseCall RunSignFlag = FalseEnd IfCase ElseCall ClearDataEnd SelectEnd SubPrivate Sub Form_Load()Call ClearDataEnd Sub 补充阐明 按钮尚有两个重要的属性Default(默认属性)和Cancel(取消属性),两个属性都以布尔赋值,把Default设为True,则在按下回车键时,不管焦点处在何处,都会触发该按钮的

44、Click事件,而当Cancel属性被设为True,在按下ESC键时,该按钮的Click属性发生。下面举个例子: 建立一种新窗体和两个按钮,Name属性分别为cmdOK和cmdCancel,把前者的Default设为True,后者的Cancel设为True,Caption属性分别为OK和Cancel。如图48。填写代码后运营:Private Sub cmdCancel_Click()MsgBox Cancel按钮被按下, vbDefaultButton1, 提示End SubPrivate Sub cmdOK_Click()MsgBox OK按钮被按下, vbDefaultButton1, 提

45、示End Sub成果如图49、410:快捷键人们一定都懂得,在VB如何实现呢。其实很简朴,在刚刚的例子里在建立一种按钮Command1,把它的Caption属性设为Click &ME,如图411,在M的下面有一条下划线,运营程序,当你按下Alt+M的时候就触发了Command1_Click事件:Private Sub Command1_Click()MsgBox Click ME 按钮被按下, vbDefaultButton1, 提示End Sub据我所知,有许多顾客有使用快捷键的习惯,注意细节上的问题可以使将来你的程序得到更多人的欣赏,不是吗? 1.6 5第五章菜单我们常常在Windows操

46、作里遇到多种各样的菜单,菜单的操作把多种命令构造化、分分类化,也节省了命令所占的空间,从作用上来讲,菜单类似于按钮,但它只有一种事件Click。VB作为Windows下的可视编程工具,菜单的设计固然很容易实现,VB3.0按下Ctrl+M,VB4.0以上的版本请按下Ctrl+E,便可呼喊出菜设计的窗口,无论VB的版本,这个窗口的样式是大同小异的,请见图51。前面说过,菜单相称于简朴的按钮,它有几种属性,其中的大部分我们都曾经见过,涉及Name、Caption、Index、Checked、Enabled、Visible、快捷键和热键等等。其中Name是必须的。下面请跟我一起设计第一种菜单。一方面在

47、Caption添入“文献”,Name为“mnuFile”,按下Next按钮,这样就建立了第一级菜单,注意菜单设计窗口的左中有四个箭头,按下向右的箭头,浮现了一排小点,如图52,在VB里这叫缩排,这样就可以开始建立第二级菜单。小知识:事实上我们在生活就中常常用到缩排,写文章时开头要空两格就是一种缩排,在编写程序时更需要缩排,这样使程序构造化,便于观测,固然菜单设计里的缩排有更多的用处。接着填写下一菜单项,Caption为“新文献”,Name为“mnuFileNew”,按下Next键。小知识:VB一共如许建立6级子菜单,如图53,尽量不要建立这样的菜单,要懂得藏在越深处的菜单项越难以被人发现,一种

48、和谐的程序界面应当让顾客立即找到需要的命令。接着反复以上环节,创立如下三个菜单项:Caption 保存Name mnuFileSaveLevel 1 Caption 另存为Name mnuFileSaveAsLevel 1 Caption 载入Name mnuFileLoadLevel 1 我们在菜单里还常常看到把不同项分开的分隔条,在VB里也很容易做到,把Caption设为“-”(减号),Name为mnuBar1。最后增长这个菜单条的最后一项,Caption为“退出”,Name为mnuFileExit。目前可以退出菜单设计窗口,菜单如图54。怎么样,通过几章的学习,是不是觉得Windows世

49、界也不是那么神秘?也对,也不对。的确,我们很容易的实现了这样多的功能,但如果你仔细想想,我们的程序还什么也不会做呢!可以说是徒有其表,要实现强大的功能,恐怕要学很长很长时间,而目前仅仅是个开头,并不是想入非非的时候,我们还要继续努力!目前再次按下Ctrl+E,重回菜单设计窗口,接着添加菜单。(按下向左的箭头,可以使菜单上升一级,Level代表菜单的级别),根据下表添加新的菜单项:Caption 编辑Name mnuEditLevel 0 Caption 剪切Name mnuEditCutLevel 1Short-Cut Ctrl+X Caption 复制Name mnuEditCopyLeve

50、l 1Short-Cut Ctrl+C Caption 粘贴Name mnuEditPasteLevel 1Short-Cut Ctrl+V Caption 有关Name mnuAboutLevel 0 其中Short-Cut就是平常我们说的热键,你可以在菜单设计窗口中找到,设立一种你需要的组合键,这样不管窗口的焦点处在何处,菜单在第几层,只要按下热键,就相称于调用了该项的Click事件。成果如图55。从Win95以来程序里引入了鼠标右键功能,使鼠标有了更大的用处,在VB里我们也很容易实现。打开Form_MouseDown事件,该事件有两个参数:Button,当按下左键时Button返回1,当

51、按下右键时Button返回2,;Shift,是指在点击鼠标时按下的键盘键,如Shift、Ctrl、Alt,这些我们将在后来讨论,但很难避免在一章中不波及到不该波及的内容,学习时有个大概的理解即可。下面在该事件里添加代码(效果如图56):Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button = 2 ThenPopupMenu mnuEdit, vbPopupMenuLeftAlignElseExit SubEnd IfEnd Sub在上面的代码中我们用到

52、了PopupMenu措施,它的语法是:object.PopupMenu 菜单名,标记,X坐标,Y坐标标记是用来表白弹出菜单位于鼠标指针位置的,它有三个值:vbPopupMenuLeftAlign 位于鼠标左 vbPopupMenuRightAlign 位于鼠标右 VbPopupMenuCenterAlign 位于鼠标中部 X、Y值可以用来制定菜单弹出的位置,可以省略。有关菜单的Visible、Enabled等属性请自己尝试。1.7 6-1第六章输入(一)我们为什么要设计计算机程序呢,固然是为了计算机能为我们完毕工作,但是要完毕不同的任务,我们就必须对计算机下达命令,然后计算机在把信息返馈回来任

53、务与否完毕。以上就是所谓的人机对话或交互功能,特别是在Windows操作里我们需要进行更多的输入工作,我们需要填写多种各样的表格,设立程序的重要参数,把数据输入给计算机,再又它完毕既定的工作就是今天我们本章要重点讨论的问题在VB中如何建立完整的输入机制。在VB中提供了一种函数InputBox能协助我们建立一种最简朴的输入窗体,语法如下:InputBox(prompt,title,default,xpos,ypos,helpfile,context)该函数返回一种字符串体现式,其参数含义为:(“”表达可缺省)prompt字符串体现式,最大长度为1024字符,窗体上的提示部分。Title字符串体现

54、式,显示标题栏里的文本。Default字符串体现式,窗体中文本框的缺省值。xpos,ypos数值体现式,以Twips为单位指定窗体出目前屏幕上的位置。helpfile字符串体现式,是协助文献的完整途径。Context数值体现式,指定适合的协助主题。也许你看了上面的阐明并不明白,那么下面我们就用Input语句完毕一种最简朴的程序。小知识:屏幕坐标在计算机的屏幕上也有一种类似于我们在中学里常用到的直角坐标系,之但是它的原点不在左下,而是在屏幕的右上角,屏幕的最右上方坐标为(0,0),它的横坐标和我们的习惯是一致的,而纵坐标则是越向下越大,不仅是屏幕,所有的对象里都是同样,需要记清。见图61新建一种

55、项目(project),在Form_load里填写一行代码:a$ = InputBox(举荐你最欣赏的网站, 最佳网站投票, VB小驿)按下F5运营程序,在Form1浮现之前先会弹出一种输入对话框,如图62。这时,无论你按下OK还是Cancel都是没有区别的,由于我们并没有对输入数据进行解决,下面我们完毕一种更加复杂些的程序。新建一种项目文献,把窗口布局成类似于图63的构造,各对象属性如下表:Form1 Caption “最佳网站投票演示”BorderStyle 3不可调节大小ControlBox 0False Frame1 Caption “输入框属性“ Label1 Autosize 1T

56、rueIndex 0至50至5 Caption “提示语句”“标题”“缺省网站”“X坐标”“Y坐标”“”Index 4 Enabled FalseIndex 4 Enabled False Text1 Text “”(空字符串)Index 0至4Index 3 Text 0Index 4 Text 0 Check1 Caption “指定输入框位置” Button1 Index 0,1Index 0 Caption “显示输入框”1 Caption “退出程序” 本例中浮现了一种Frame1控件,它是一种框架,可以用来把窗体提成好几种部分,一方面应当在窗体上画出Frame1控件,然后再选择相应

57、的控件,在Frame1上描出轮廓,使其是出目前Frame1之上,本例中除去两个按钮,其他都在Frame1上面。本例中用到了几组控件数组,其创立措施是,在选定的点右键,选择Copy,再在窗体其她部位单击右键,选择Paste即可,注意,若要使粘贴的对象在Frame1上,请在Frame1上单击右键选择Paste。我们通过这个窗体,对输入框进行完整的控制,原理是这样的:当我们把窗体中要填写的对输入框的参数完毕后按下OK按钮,就会浮现我们设计的那个输入框,我们从输入框退出时则返回我们投票的成果,代码如下.窗体初次被装入时,Label1(3)、Label(4)和Text1(3)、Text1(4)的Enab

58、led属性都是False,我们需要通过变化Check1的Value(1,被选中,0,未选中)使她们有效或无效。声明全局变量(General):Dim PosChk As Boolean 检查X、Y坐标与否有效Check1_Click 事件:Private Sub Check1_Click()If Check1.Value = 1 ThenLabel1(3).Enabled = TrueLabel1(4).Enabled = TrueText1(3).Enabled = TrueText1(4).Enabled = TruePosChk = TrueElseLabel1(3).Enabled =

59、 FalseLabel1(4).Enabled = FalseText1(3).Enabled = FalseText1(4).Enabled = FalsePosChk = FalseEnd IfEnd Sub接着在按钮中填写代码:Private Sub Command1_Click(Index As Integer)Dim Prompt, Title, Default As StringDim xPos, yPos As IntegerSelect Case IndexCase 0Prompt = Text1(0).TextTitle = Text1(1).TextDefault = Text1(2).TextIf PosC

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!