《VB编程基础教程》由会员分享,可在线阅读,更多相关《VB编程基础教程(52页珍藏版)》请在金锄头文库上搜索。
1、送给 Visual Basic 6.0 的初学者应朋友的要求,写这么个东西,这里主要介绍一些学习VB 过程中应该注意的问题,因为其他的东西可以从任何一本教材中看到。1、学习 VisualBasic 之前最好做好一下几种准备:?知道 Windows 操作系统中常见部件的名称,例如“按钮 ”、“文本框 ”、“单选按钮 ”、 “滚动条 ”等。?掌握一定的编程思想或数学思想。或者说有一定的逻辑分析能力。?能经常上机实践,当然最好的学习方法是边看书边实际操作。初学者推荐阅读高等教育出版社出版的全国计算机等级考试?二级 Visual Basic 语言程序设计(附带一本课后习题答案)、清华大学出版社出版的
2、VisualBasic 程序设计(谭浩强主编)。其他的书在很多问题上讲的不清楚。不推荐参考。2、VB 中的主要内容:VB 也是一门计算机语言,所以也就避免不了要有各种语法,主要是“变量类型 ”、“选择程序结构 ”、“循环程序结构 ”、“数组 ”、“子函数和子过程”、“文件 ”。另外由于VB 是可视化的编程工具,所以比传统的QBASIC 和 C 语言多了 “控件 ”这一部分。具体需要那些控件教材里面有介绍。3、各个章节的重点难点介绍:这里的 “章节 ”并不是按照教材上的“章节 ”介绍的,而是按照刚才我划分的“块”介绍。并且是按照国家计算机二级VB 考试的标准叙述的。1)、变量类型变量和常量的概念
3、。主要的变量类型有:integer、 string、long 、 Boolean、currency、 float 、double。其中 integer、 string 和 Boolean 最为常见。2)选择程序结构几种常见的选择结构。书上都有介绍。学习过程中记得如何判断条件的“真 ”“假”,选择不同的程序走向。如果条件为“真 ”,则怎么样;如果条件为“假 ”,又该怎么样。最后不要忘了End If。在学习选择程序结构的时候注意培养自己良好的编码风格。看一个例子:Private Sub number_Click(IndexAs Integer)If lastinput numsThendisp =
4、 Number(Index).CaptionElsedisp = disp + Number(Index).CaptionEnd Iflastinput = numsEnd Sub不管你是否能看懂这段程序写的是什么,况且这也不是我让你看这段程序的主要目的。你应该注意这段程序的编码风格,就是格式。 VB 里面几乎每段代码都在一个 “Sub”和“EndSub”中间,所以你在写程序的时候最好使第一行代码向右缩进一个 Tab 键,按一下键盘上的 Tab 键,然后输入代码。如果出现 “If 等”语句的时候, “Then”后面一行的代码要缩进两个 Tab 键。不知道是否明白。不明白也没有关系。多看一些优秀
5、代码就明白了。3)循环结构这一部分可以说对初学者来说比较头疼。特别是循环条件的判定。什么时候要执行循环,什么时候不用执行循环。哪些语句比那些语句少(多)执行一次循环。主要的循环语句教材上都有详细的讲解,这一部分要多揣摩,多练习。 可以在源程序上用笔划出语句执行的顺序。其实用不了多长时间就明白了。给出一个典型的例子:“百钱买百鸡 ”Private Sub Command1_Click()Dim x%, y%, z%, tAs Data,t1 As DataFor x = 0 To 100For y = 0 To 100For z = 0 To 100If x + y + z = 100 And
6、3 *x + 2 * y + 0.5 * z = 100 ThenPrint 能买母鸡 ; x;只,公鸡 ; y; 只,小鸡 ;z; 只End IfNext z, y, xEnd Sub这段程序可以算是初学者比较经典的算法。100块钱,要买三种鸡,母鸡3 元一只,公鸡2 元一只,小鸡0.5 元一只。问一共可以买几只。研究完算法之后别忘了看格式。其中Next z,y,x 的顺序不能颠倒,也可以写成如下格式:Private Sub Command1_Click()Dim x%, y%, z%, tAs Data,t1 As DataFor x =0To100Fory =0To100Forz =0T
7、o100If x + y+z= 100 And 3 * x + 2 * y + 0.5 * z = 100 ThenPrint 能买母鸡 ; x; 只,公鸡 ; y; 只,小鸡 ; z; 只End IfNext zNext yNext xEnd Sub4)数组数组是一种重要的数据结构。要多练习。其中VB 里面最容易出错的就是下标!例如定义一个数组Arr(4) ,那么它一共5 个变量: Arr(0) 开始,一直到 Arr(4) 。5)子函数和子过程这里我沿用QBASIC 里面的叫法。在子函数(过程)部分最容易搞不懂的概念就是“传地址 ”和“传值 ”,即 “ ByRef和”“ ByVal ,”By
8、Ref 是默认的。也就是说如果没有在函数的参数列表中注明是那种传递方式,默认按照传地址进行处理。函数中的数值既可以由主函数传递到子函数(过程)中,也可以由子函数(过程)回到主函数中。其实我这里说的“主函数 ”是不确切的,应该叫做“主调函数 ”。另外还有一个与之相关的概念是“形参 ”和 “实参”,就是 “实际参数 ”和“形式参数 ”。实际参数是子函数(过程)中的参数,而形式参数是“主调函数 ”中的参数。我觉得 VB 中子函数参数调用应该是比其他计算机语言简单的一个地方,包括C/C+ 等。在 C/C+ 中,参数传递默认的是传值。就是不能把子函数(过程)的参数传回主调函数,如果要进行这样的操作,就要
9、借助指针变量。看一个简单的子函数(过程)调用的例子:Public Sub Swap(x,y)Dimt As Integert=xx=yy=tEnd SubPrivate Sub Form_Click()Dima As IntegerDimb As Integera=10b=20Swap a,bPrint ” a=”a; , ” b=” ;bEnd SubForm_Click 是主调函数, Swap 是子函数(过程)。在主调函数的倒数第三行调用了子函数(过程),输出结果为:“ a=20,b=10。”6)文件这一部分单独考试出题不多,实际应用中用到的也不多,但是它总是在某些考试中以压轴题的姿态出现
10、。并且更为严重的是:如果对这一部分不清楚,会使整道题都无从下手。所以还是要好好看看这部分为好。7)常见控件对于控件最令初学者头疼的是“属性 ”、 “事件 ”和“方法 ”这三个概念。这三个概念是 “面向对象程序设计”专用的。 VB6 虽然不能算是标准的“面向对象程序语言”,但是具备了很多的面向对象特征,唯独不具备 “类的继承”特征。考虑到初学者对面向对象编程没有基础,所以关于上述三个概念就不能给出确切的定义。但是我们可以这样去理解这三个概念:“属性 ”就是某个控件的固有性质,拿Command(按钮)控件为例,它的“属性 ”就有 “长度 ”、 “宽度 ”、“是否显示图片 ”等。简单来说,大多数初学
11、者接触的控件属性,都可以在VB6 开发环境中的属性栏找到(如果找不到的属性称为“只读属性 ”)。“事件 ”很容易理解。比如我们用鼠标单击一个按钮,这时候“按钮 ”这个控件就接收鼠标的单击,换句话说就是“按钮上发生了单击事件”。那么发生单击事件以后程序会做什么呢?那就是运行你编写的针对此事件的程序。现在你打开VB6 的界面,随便画一个按钮,然后双击这个按钮,进入代码视图,在Private Sub Command_Click() 和 End Sub 之间写代码。那么你写的这段代码就是名称为Command 的按钮发生Click 事件执行的代码。“方法 ”的概念最不容易理解。按照标准的面向对象编程描述
12、,方法是一个函数,它被封装在类中。其实我们也可以把方法想想成一个“函数 ”,类似上文中描述的“子函数(过程)”。初学者常用的VB6 方法不多,其中最常用的就是“Print 。”正如您所想象的那样,刚才使用的时候也没有发现它有多么特殊。其实我们已经在使用Print 方法了。只不过它所归属的对象我们不需要知道而已。关于控件的使用这里就不多说了,因为教科书上介绍的比我介绍的详细的多。4、结束语:Visual Basic6.0 可以说算是最简单的一门计算机语言。学习的时候多用心。其实前面“变量 ”部分即使记不住也无妨,在后续的学习过程中会不断牢固以前的知识的。更何况现在的考试都带有 MSDN ,就是 VB 的帮助系统。如果有哪些关键字或者用法记不清楚了,可以随时查阅文档。最后祝各位VB 愉快!附:送上几例经典的算法求最大公约数和最小公倍数Private Sub Command3_Click()Dimm1%, m%, n%, n1%, r%, b%m1 = Val(InputBox( 输入一个数: )n1 = Val(InputBox( 请输入另一个数:)If m1 n1 Then m = m1: n = n1 Else m = n1: n = m1Dor = m Mod nIf r = 0 Then ExitDom = nn = r