人人范文网 其他范文

vb学习(精选多篇)

发布时间:2022-05-25 06:07:53 来源:其他范文 收藏本文 下载本文 手机版

推荐第1篇:VB学习心得体会

vb学习的心得体会

————刘师桐

这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。

vb全称为visual basic,是微软公司推出的可视化编程工具msdn之一,是目前世界上使用最广泛的程序开发工具。vb提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且vb提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以vb学起来简单,用起来方便。因此,我学了vb,并有了如下收获:

1.富业余生活。业余时间到处游手好闲的身影不见了,没事我肯定一动不动的坐在电脑面前摆弄vb。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在生活有了寄托,是vb给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。vb是一门计算机编程语言,也算是一项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。 我们每学一点,就赶快把它用到实际的程序中去,自己多学

多用多实践,水平才能不断提高,这就是“学以致用”。 多看多练是我独门绝技,一般人我不告诉他:多看------别人的代码,即使看不懂也没关系,可以把这些代码输入到机子里运行,然后根据运行结果去体会程 序的思路和用途。

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。越是这样越不要灰心,应该放松心态,一点一滴的去查。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

通过这个学期的学习,对了vb这种高级语言有了初步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,包括教材上的例题程序,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收获了很多,我对下学期的计算机2级考试很有信心!!!篇2:vb学习心得体会

vb学习心得体会

这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心体会。

通过学习vb我基本学会了编辑一些小程序,掌握了一些基本的知识,得到了以下一些收获:

1.富业余生活。曾经业余时间到处游手好闲的身影不见

了,以前没事我肯定一动不动的坐在电脑面前摆弄电脑。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在有了vb,它给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。vb是一门计算机编程语言,也算是一

项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 只有这样我才呢学有所成

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人

开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,

你就得花上个几个小时,半天,甚至更长。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

通过这个学期的学习,对了vb这种高级语言有了初

步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收了很多。篇3:vb课程学习心得

vb课程学习心得

姓名:刘玉军

专业:资源勘察工程 学号:201220010206 这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也想让我通过计算机等级考试打下基础。那么谈谈这学期的学习中对vb课程的简单认知和心得体会。 basic语言是专门为初学者设计的计算机语言,于1964年问世。最初只有十几条语句,由于简单易学而受到了用户的欢迎,很快就应用于各个领域。随着计算机科学技术的发展,计算机厂商在原有的基础上不断的添加新的功能,进行扩展强化,各种basic版本应运而生,使它成为最常用的计算机程序设计语言。

1987年microsoft公司开发了quick basic,它克服了原有basic结构化差和运算速度慢的缺点,并且在功能上大为扩展,具有编辑、运行和调试的集成环境。quick basic兼容以前的传统basic。

vb是microsoft公司在quick basic的基础上为开发windows应用程序而提供的强有力的开发环境和工具,是具有很好的图形用户界面(graphic user interface,简称gui)

的程序设计语言。它采用面向对象和事件驱动的程序设计两种新机制,把过程化和结构化编程集合在一起。正是由于它在应用程序开发中的图形化构思,使得开发者能非常容易地创建一个窗口(在vb中称为窗体—form),然后从vb工具箱选择控件放在窗体内,无需编写程序。就如同目前盖房子所用的门、窗、水泥、钢筋、砖等,都是现成的材料,只要到建筑现场组合就可以了。用vb设计程序就好比现代的建筑师采用现代科技的产品,而用传统dos(disk operating system)下的basic的就如同早先的工匠,一砖、一瓦、一木都要自己动手。 visual basic for windows是一种具有良好图形用户界面(gui)的程序设计语言,同时又是一种完全支持面向对象程序设计的语言。

visual是指开发图形用户界面(gui)的方法,不需要编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象拖放到窗体上即可。这种直观的编程方法,也叫做可视化编程。visual的意思是“视觉的”或“可视的”,也就是直观的编程方法。就像使用“画图”之类的绘图程序,通过选择画图工具来画图一样。

basic是指basic语言,之所以叫做“visual basic”就是因为它使用了basic语言作为代码。vb在原有basic语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多与windows gui有直接关系。 (转载于:vb学习心得体会) visual basic是可视化程序设计语言,具有简单易学、功能强大、软件费用支出低、见效快等诸多特点,而且是windows应用程序最迅速最简洁的开发工具,易于初学者和非专业人员掌握使用。目前,全世界数以百万计的程序设计人员正在用visual basic开发各种类型的各种软件。

这门课是一门面向全国高校各个专业大学生的公共必修课,它以microsoft可视化编程工具visual basic6.0为例主要介绍高级程序设计方法。visual basic6.0由于其具有界面友好,操作方便面等优点,是从事计算机设计的最佳编程工具之一,同时也是学习windows编程设计的极好语言。通过本课程的学习,使学生掌握用windows编程解决实际问题的一般办法,包括语句、函数、控件等 概念的掌握,以及从基本控件的使用到高级控件的应用,从图形编程、文件使用到多媒体程序开发,从数据库编程到定制activex控件等内容,为培养学生结合专业进行软件开发的能力打好基础。

在学习的过程中,我对vb课程里的运算符产生了很大的学习兴趣。下面主要谈谈我学习vb的方法。

一、学习vb程序设计的方法

(1)保持良好的学习心态

1、要有自信,自强,积极主动学习.

2、克服畏难情绪,树立学好程序设计的信心

(2)要有良好的学习习惯

1、课前预习,认真听课并适当做些笔记,课后要认真复习消化所学内容,完成作业.

2、vb程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成. (3)学习程序设计要注重理解一些重要的概念. vb程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在 程序入门阶段还是应该重视概念的学习. (4)自己动手编写程序

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力. (5)阅读,借签别人设计的好程序

多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能 则可以学到别人优秀的东西,帮助自己 提高自身水平. (6) vb程序设计学习的重点

1、程序设计课是高强度的脑力劳动,不是听会的,也不

是看会的,而是练会的.

2、只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容.等你在编写大量程序之后,我想过二级肯定没问题,不过能不能做到真知灼见,运用自如我就不敢说了.

3、动手能力的培养是这门课和以往课程最大的不同之处.重点放在思路,算法,编程构思和程序实现上.语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用.)上机调试程序应注意的几点:

1、上机前应认真把实验题在用纸上做一做(包括窗体界面设计,事件代码的编写等)

2、每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学.

3、平时应多抽课余时间多上机调试程序.注意系统的提示信息,遇到问题多问几次为什么. (6)养成良好的编程习惯

1、程序构思要有说明;

2、学会如何调试程序;

3、对运行结果要做正确与否的分析.

二、复习过程简单的说就是细看书,勤做题,最后练上机。

细看书,就是在考试前的一个月内,以看书为主,越细越好篇4:vb学习总结

1.2.1 vb简介

vb:visual basic basic:beginner’s all-purpose symbolic instruction code basic语言是专门为初学者设计的计算机语言,于1964年问世。最初只有十几条语句,由于简单易学而受到了用户的欢迎,很快就应用于各个领域。随着计算机科学技术的发展,计算机厂商在原有的基础上不断的添加新的功能,进行扩展强化,各种basic版本应运而生,使它成为最常用的计算机程序设计语言。

1987年microsoft公司开发了quick basic,它克服了原有basic结构化差和运算速度慢的缺点,并且在功能上大为扩展,具有编辑、运行和调试的集成环境。quick basic兼容以前的传统basic。

vb是microsoft公司在quick basic的基础上为开发windows应用程序而提供的强有力的开发环境和工具,是具有很好的图形用户界面(graphic user interface,简称gui)的程序设计语言。它采用面向对象和事件驱动的程序设计两种新机制,把过程化和结构化编程集合在一起。正是由于它在应用程序开发中的图形化构思,使得开发者能非常容易地创建一个窗口(在vb中称为窗体—form),然后从vb工具箱选择控件放在窗体内,无需编写程序。就如同目前盖房子所用的门、窗、水泥、钢筋、砖等,都是现成的材料,只要到建筑现场组合就可以了。用vb设计程序就好比现代的建筑师采用现代科技的产品,而用传统dos(disk operating system)下的basic的就如同早先的工匠,一砖、一瓦、一木都要自己动手。

visual basic for windows是一种具有良好图形用户界面(gui)的程序设计语言,同时又是一种完全支持面向对象程序设计的语言。

visual是指开发图形用户界面(gui)的方法,不需要编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象拖放到窗体上即可。这种直观的编程方法,也叫做可视化编程。visual的意思是“视觉的”或“可视的”,也就是直观的编程方法。就像使用“画图”之类的绘图程序,通过选择画图工具来画图一样。

basic是指basic语言,之所以叫做“visual basic”就是因为它使用了basic语言作为代码。vb在原有basic语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多与windows gui有直接关系。

1.2.2 vb的发展过程

1991年:为了简化windows应用程序的开发,microsoft公司推出了visual basic 1.0。

1992年:microsoft公司推出了visual basic 2.0。

1993年:microsoft公司推出了visual basic 3.0。

1995年:随着windows95的发布,visual basic 4.0也随之推出。

1997年: microsoft公司开始推出windows开发工具套件microsoft visual studio 1.0,

其中包括了visual basic 5.0。

1998年:microsoft公司发布的microsoft visual studio 98则包含了visual basic 6.0。

visual basic 5.0以前的版本主要应用于dos和windows 3.x环境中16位程序的开发,visual basic 5.0以后的版本则只能运行在windows95,windows98,windows2000或windows nt操作系统下,是一个32位应用程序的开发工具。

1.2.3 vb版本简介

visual basic 6.0分为3个版本:学习版、专业版和企业版,分别满足不同人员开发的需要。开发人员可以根据3个版本的功能,选择一种合适的visual basic 6.0版本

一、学习vb程序设计的方法

(1)保持良好的学习心态

1、要有自信,自强,积极主动学习.

2、克服畏难情绪,树立学好程序设计的信心

1.在看视频的时候,手持一支笔,桌放一张纸。将我们看了不太明白,或讲师介绍的重点注意事项,写下来,不明白的内容课下查询msdn(这可是个好帮手,里面包括的内容很全面,也很详细,还有示例),讲师强调的注意事项多看看,有的是一些必要的编程习惯,一定要注意。这些习惯在我们以后编写大的程序的时候很有用。

二、

(2)要有良好的学习习惯

1、课前预习,认真听课并适当做些笔记,课后要认真复习消化所学内容,完成作业.

2、vb程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成.

三、2.有时候我们遇到自己不明白的知识点的时候,我们也不要死扣着不放,也许讲师在后面会重点解析,或许当我们放一点时间再看的时候,就会柳暗花明

(3)学习程序设计要注重理解一些重要的概念. vb程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在 程序入门阶段还是应该重视概念的学习.

四、.在看视频的同时,独立的敲打一些代码是很必要的。因为有时候我们自认为自己已经懂了这部分内容,但是在实际操作的时候我们会发现,有很多地方自己还是懵懵懂懂的,不知道如何写代码,只有实际操作后才会将这些知识理解的更深刻。

五、(4)自己动手编写程序

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力.

六、4.有些时候我们看不懂讲师写的一些代码,如果自己捉摸着去操作一下,我们就会豁然开朗。当遇到自己怀疑的词一定要去查找帮助

(5)阅读,借签别人设计的好程序

多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什

么这么设计能不能将程序修改完成更多的功能 则可以学到别人优秀的东西,帮助自己

提高自身水平. 5.反复看一些不懂得知识点。俗话说,书读百遍,其义自见。当我们遇到看不懂的程序的时候,一是,我们要查找相关的资料(msdn或网络),二是,我们多看两遍这个程序,也许看过多遍之后,自己就会理解其中的含义。实在不懂了,也可以跟同学探讨,呵呵。

七、(6) vb程序设计学习的重点

1、程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的.

2、只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容.等你在编写大量程序之后,我想过二级肯定没问题,不过能不能做到真知灼见,运用自如我就不敢说了.

3、动手能力的培养是这门课和以往课程最大的不同之处.重点放在思路,算法,编程构思和程序实现上.语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用.)上机调试程序应注意的几点:

1、上机前应认真把实验题在用纸上做一做(包括窗体界面设计,事件代码的编写等)

2、每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学.

3、平时应多抽课余时间多上机调试程序.注意系统的提示信息,遇到问题多问几次为什么.

八、6.在遇到一些繁琐的很难理解代码格式的时候,如果我们很难完全理解这些代码,那么我建议大家用自己可以接受的一种方式来理解这些代码,可能我们理解的误区很多,但是我认为这些误区会在我们以后的不断学习和交流中纠正过来。就像编写一个大的程序一样,在一次又一次的编译后,这个大程序逐渐完善

(6)养成良好的编程习惯

1、程序构思要有说明;

2、学会如何调试程序;

3、对运行结果要做正确与否的分析.

九、7.在学习的过程中,我们要学会老师经常给我们讲的网络记忆法,其实在vb中有很多的方法,属性或事件的应用都有相似之处,然后将这些知识点结合起来记忆,又省时又有效

二、复习过程简单的说就是细看书,勤做题,最后练上机。

细看书,就是在考试前的一个月内,以看书为主,越细越好(如果你时间紧的话可只重点看些考点涉及的东西),把书上的知识点(最好看几份历年试题,让自己明白考什么。)看懂看透,暂时不明白的或者不理解的先用笔记本记下。这样你的笔记本就有每章你不懂的知识点和题目了,之后可以问同学,问老师„„如此反复,半个月下来你的笔试水平考试应该没问题了;下半个月的时间可以一边练习题目,一边练习上机。切不可前一段时间做题,后一段时间上机,那样的话会有很多忘记的知识点。

我们有时希望某个文本框只能输入数字,不能输入字符。有时希望用户在文本框中输入的数

字最大不能超过某个值。这个对于vb.net来说都是太easy了。

我们可以 通过 在 文本框的 keypre 事件 中添加代码就可以非常轻松的实现这种效果。

比如我们希望文本框中只能输入字符 a ,那么我们可以这样写:

private sub textbox1_keypre()sub textbox1_keypre(byval sender as object, byval e as system.windows.forms.keypreeventargs) handles textbox1.keypre if e.keychar a then e.handled = true end if end sub 或者

private sub textbox1_keypre()sub textbox1_keypre(byval sender as object, byval e as system.windows.forms.keypreeventargs) handles textbox1.keypre if e.keychar a then e.keychar = end if end sub 如果想让文本框只能接受数字,则可以这样写(这个是 c#,但是与vb.net只有语法上的差异):

private void textbox1_keypre(object sender, system.windows.forms.keypreeventargs e) { if(e.keychar=9) { e.keychar=; } }从前面的两个例子我们我们可以知道。只要将system.windows.forms.keypreeventargs 对象的 keychar 属性的值清空,就会取消当前的键盘输入。也可以将 system.windows.forms.keypreeventargs 对象的handled属性置成true。来取消当前输入。e.handled表示当前的输入是否处理过,如果为true,则表示处理过。所以当你用程序将它置成 true,后,系统就不再处理它了,这样,这次输入就被取消了。

自从开了vb课,我就拿梦幻西游来练习,制作梦幻方面的计算器,总结如下:

1:在最初阶段,代码只会 if then ,于是,重复代码一大堆,不过看着能正常使用,很满足。

2:需要用到tab,这是我的第一个难题,我并不知道vb自带的有,于是还到此论坛来询问。

3:用到数组,第一次尝试写function,于是修改了以前的大量if...then ,代码简洁多了。

4:用到文件的读取,这个书本有介绍,结合网上的搜索,不是很难,不过txt文件按行读取并组成一个数组,每行的文字分开等,也是一个大难题。

5:学习文件打包,控件注册,最终选定steup factory,并制作了一个漂亮的安装界面。

7:由于软件采用自动更新,而我又采用的是发现新版本就把整个安装文件下载重新安装的方法,很明显有些浪费。并且使用steup factory进行打包后,安装包比较大,于是开始学习用vb代码去注册控件,这样可以用winrar制作成一个压缩包,只有以前的一小半大小。

8:感觉vb自带的软件的界面不好,从网上搜到了一些界面的原码,大多还是看不太明白,不过照抄着做也算成功了。

9:软件的一些设置问题,软件的透明度,软件窗体设置为最前面。这个方面还有一点搞不好,就是怎么样取消软件在最前,setwindowpos me.hwnd, -1, 0, 0, 0, 0, 3 这可以设置为最前,那么怎么取消最前呢?

10:软件的托盘和气泡提示正在学习中。

11:软件的注册,采用的是mac地址的方法,成功!

12:这之间,也修改了很多的细节问题,感觉不是很难篇5:vb实训个人总结

vb实训个人总结

在这一周的实习中,使我学到了好多书本上没有的知识,更让我对vb有了更深一步的掌握,同时也发现了许多自己在学习方面的不足,取长补短,互相学习,共同进步,我们不但学习了知识,更好的证明了实践是检验真理的唯一标准。培养和提高我们的实际操作和应用能力,在学习vb后,具体的是使我们熟悉并使用各种类和各种vb控件的应用,在编写程序的过程中我们还专门编写了注释以便于修改程序!这些内容使我们更加熟练的应用这门语言,给自己以后能够走上工作岗位打下良好的基础!

实训的第一天接到任务时我们都觉得有点难度,很有挑战性,毕竟学籍信息管理系统是一个比较系统、完善、功能相对较齐全的管理系统,即使是用户模块也可以完成各种操作,如对用户的查询、添加.删除以及修改等。因此程序编写也十分复杂,工作量较大,编写一定要认真。一个小小的失误都可能使程序出现大的漏洞。而我们只是学了点简单的vb程序编写,没有尝试过这 种相对来说比较系统完善的系统。所以在做项目的时候我们倍感压力、更加的团结协作,可即使如此我们还是出现了错误,我们的程序在编写上存在一些漏洞,导致调试时不能正常运行,后经过老师的指导、我们的调整,终于可以完美的运行,

我做的是学籍信息管理系统,但是在编写程序的时候也遇到了很多难懂的问题,有的是实践能力差,有的是对书本上的内容太过于模糊,有的是什么也不知道,当中有说不出口的味道。有悔恨,后悔,自责,都是平时学的不扎实,不过通过这次的实训使我的vb应用能力得到大幅度提高,从以前的不懂到懂,从模糊到运用自如,从不知道到知道等等,一切都变的清楚简单。善于

学习和总结,勤于思考,做之前多想想,多向有经验的请教,能帮你降低风险、减少投入、少走弯路,做的时候心里也才有底;做好之后再来想想就是总结,就是经验和教训。有些事只有亲自动手体会了才知道其中的道理,不是口里什么知道一到实际中却又茫然。无论什么都有其自己的规律。通过这次对vb的程序设计和运行,初步掌握了vb程序的规律和设计方法,并从运行时的错误中对vb有了更深一步的了解,其实只要自己用心去钻研,vb并没有我们想象的那么难学。

通过这次实习,使我对vb有了更深刻的了解和认识,比起以前强了许多。进一步了解对vb设计的方法和一些小技巧,还有数据库的连接与实现,帮助等工具的操作与实现,都比以前操作更熟练了,理论和实践联系到了一起,学到了真正的知识,但同时也遇到不少的难题。例如,数据库连接的正确路径、编写程序中的一些小问题等,不过,在老师的指导和组长的帮助下、还有自己付出的努力和及时查阅有关资料,最终,所有难题都一一解决了,而自己也感到了一些欣慰。

同时也使我对以后的vb学习有了信心和兴趣,不过,还要继续努力,更要懂得把理论和实践联系起来,多动手勤动脑,这样才能学到更多的知识,我相信自己一定可以学好的。

推荐第2篇:VB学习札记

VB学习札记

在大二上学期学习过VB.NET,但由于将近1年时间没有接触,本学期刚开学时vb水平已经退化到没学过的水平了。所以,必须要利用前3周来复习已经学过的知识,一边做练习一边巩固。

首先,我找到以前的VB书以及笔记本,大致的看了一遍,了解到所学知识的大致框架。 之后,开始着手做第一题的练习题。题目中涉及到的VB语句就翻书再细致的去看。顺便把这一类型的语句复习一遍。

按照这样的流程,花了两个多礼拜,陆续把VB复习的差不多了。而且作业也完成的差不多了。

我总结了一下我学习VB的方法:

首先,要保持良好的学习心态

1、要有自信,自强,积极主动学习.

2、不要畏惧困难,克服畏难情绪,树立学好程序设计的信心

之后,我觉得要有良好的学习习惯

然后,我觉得学习程序设计要注重理解一些重要的概念.VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在 程序入门阶段还是应该重视概念的学习.我觉得务必要自己动手编写程序。遇到问题时,自己去琢磨,进行试验。再不行的时候,会找同学来帮忙。一起讨论检查语句中的错误。

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力.程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的。 只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容。

同时,也阅读、借签别人设计的好程序。我也会参与讨论同学遇到的问题。我发现在大家一起讨论,发现问题并最终解决问题时,学到的或许比自己单独一个做学到的更多。多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能 则可以学到别人优秀的东西,帮助自己 提高自身水平.最后,我发现上机调试程序的时候应认真把实验题在用纸上做一做(包括窗体界面设计,事件代码的编写等)每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学.平时应多抽课余时间多上机调试程序,同时时常注意系统的提示信息,遇到问题多问几次为什么。

推荐第3篇:VB指导学习

2005-7-24

VB指导学习

1、if语句的另一种写法:

if num=10 then print num

当then后面(同一行)有执行语句时,if语句不能加end if

如有end if,则then后(同一行)不能有语句

2、两条语句放在同一行时用“:”分割

如:print num:print num+1

3、语句分多行写用“ _”连接,注意“空格&下划线”

如:print num _

+1

4、除法:a/ba\\b

C++:“/”是除法,a、b都是int,则结果是int,如果其中一个是float,则结果float“\\”是转义字符。

VB:“/”是除法,有小数。“\\”取整(小数点后舍)

5、case语句用法:

private sub form1_click()

dim a

select case a

case 1to4,7to9,11,13

print a

case else

msgbox”不在范围内”

end select

end sub

6、VB中假是”0”,真是”-1”

C++中假是“0”,真是“1”

7、private sub form_click()

for I=2to4 step-1读完完整的一句之后,如发现问题,则跳过此句执行下一句。print I

next

print I本程序只执行此句一次

end sub

8、倒序输出字符串

取字符函数mid(string,2,3)表示从string字符串中第二位开始,一共取三位如:mid(abcdefg,2,3),则结果为 bcd

lift(abcd,2)=ab

right(abcd,2)=cds

例:private sub command1_click()

dim x as integer,str_len as integer

dim str as string

for x=str_len to 1 step –1

text1.text=text1.text + dim(str,x,1)

next

end sub

form1窗体里有两个文本框和一个按钮

9、循环for I=1to5

„„

next (I)(next后最好不要加i)

10、声明变量:dim a,b as integer则a是变体,b是int

dim a as integer,b as integer则a,b都是int

11、webbrowser 网页

添加部件 ms internet controls 控件

private sub form_click()

webbrowser1.navigate app.path & “\\a\\心理测试.html”app.path表示当前目录end sub

private sub form1.resize()

wenbrowser1.height=form1.scaleheight-10“-10”可不写

webbrower1.width=form1.scalewidth-10如不加scale,则会覆盖一点边

12、有退出按钮的窗体,点击退出时询问,点击窗体右上角X则不询问,怎么办?Private sub form_unload(canel as integer„„)

If msgbox(”是否退出?”,vbokcancel,”询问”)=vbok=true=false

Cancel=true-取消关闭

End if

End sub

13、”关于”窗体

添加“关于”对话框

14、使用“选项卡”省地方

添加控件“ms tabbed dialog control 6.0”

如添加控件“ms windows common control 6.0”->”tabstrip”也可以作,但不好用。

15、帮助文件 msdn是世界最大的帮助文件,CHM格式的帮助文件

html help workshop

1.目录 ->节点&页面 ->编译

2.new ->project ->ok ->下一步 ->保存路径&名称 ->下一步 ->勾中 html

files(.htm) ->点击Add ->下一步 ->完成

3.搜索proj ->属性 compiler ->勾中compiler ->ok

4.作节点 页面 关键字

project(工程) ->contents(目录) ->index(索引) ->ok ->保存节 钥匙增加关键字contents(目录) ->是否创建 ->ok ->保存 ->点左第二个文件夹则属性换成书图标

16、用VB调用帮助文件

设工程属性的“帮助文件名”后,按“f1”弹出帮助

设一个“帮助菜单”,在菜单click事件中加入sendkeys“{F1}”,模拟用户按键盘还可以模拟alt + f4 , 但不可以模拟 control + alt + del (重启),

17、MDI无子窗体时,帮助无作用,调用ADI/ATI

把目录的成app.path ,把此文件拷贝到其它位置仍可使用

18、shell 只能调用.exe文件hh.exe是windows 自带的帮助打开“帮助文件”的exe文件shell”hh.exe 帮助文件的路径及文件名”

19、private sub a_click()

sendkeys”{f1}”

shell”hh.exe d:\\qiaosl\\„„.chm”,vbnormal focus

end sub

private sub form_load()

ap.help file=app.path &”\\„„.chm”

20、1.工程属性设“帮助菜单名”

2.App.helpfile= „„

3.Sendkeys”{f1}”

4.shell(“hh.exe„„”)

1&2作用是:按F1出帮助,便用2好一些,3是模拟按键盘F1,4可完全单独使用,3&4用在按键或菜单。

Api例子

下午

21、设置象素:窗体的lemode属性1-twip->缇,pixel->象素

22、动态生成控件必须用控件组

23、缺省事件是双击控件时自动出现的事件

缺省属性可省略:text1.text=”a”可写成text1=”a”,可省略“.text”

24、cotfouse->事件

25、模式&非模式窗体:

26、参数传递:默认按引用传递,Byval是按值传递

subs(byval x as single,y as single) 则x按值,y按引用,VB中真为-1

27、第十章,error

语法错误:

运行时错误:一般不出错,特定时出错,考虑不周全,如除数为0

逻辑错误:不报错,写的不对,如循环次数不对。

错误处理代码

1. 创建捕获错误代码

2. 处理此错误

3. 继续执行

on error goto 1标号(数字&字母都可以)

exit sub

1:

msgbox(“除数不为0”)

text1.text=””

text1.setfouse

end sub

resume (next/line)回到出错行,或出错行的下一行,或指定位置

on error resume next忽略错误/延迟最好少用,延迟后改不了

F8是单步运行

28、对象 –>err.属性&方法 number(错误编号)

29、dbpath=commondialog.filename

if dbpath=””

end

con.open

else resume

showopen

30、C++复习题:

简单

1. 用户接收一个数,调用一个函数,输出该数的立方

2. 写一个函数min(int a[]),求主程序中传来的数组中最小值

难度适中

3. 民主投票方法选班长,候选人编号A、B、C、D每位同学只能选一人作班长,

输入每张选票的候选人编号A~D,输入0终止,

调用函数proce()输出每人得票数及当选人

4. 接收用户输入的数,直到有5个奇数,显示此5个奇数,

调用max()函数显示此5个奇数中最大数

高难度

5. 字符串变量A、B,B是A中的一部分,将B抠出A,再输出

超难度

6. 卖票,车站一共15,每站上(剩下站数)个人,然后剩下每站依次下一个人,问应

设几个座位,卖出多少张票

7. 发牌:按顺序发随机牌(使用随机数)

推荐第4篇:VB学习心得体会

VB学习心得体会

这学期选修了VB这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心体会。

通过学习vb我基本学会了编辑一些小程序,掌握了一些基本的知识,得到了以下一些收获:

1.富业余生活。曾经业余时间到处游手好闲的身影不见了,以前没事我肯定一动不动的坐在电脑面前摆弄电脑。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在有了VB,它给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。VB是一门计算机编程语言,也算是一项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 只有这样我才呢学有所成

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,

你就得花上个几个小时,半天,甚至更长。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

通过这个学期的学习,对了VB这种高级语言有了初步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的VB课程让我收了很多。

推荐第5篇:VB学习心得体会

篇一:vb学习的心得体会 vb学习的心得体会 ————刘师桐

这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。

vb全称为visual basic,是微软公司推出的可视化编程工具msdn之一,是目前世界上使用最广泛的程序开发工具。vb提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且vb提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以vb学起来简单,用起来方便。因此,我学了vb,并有了如下收获:

1.富业余生活。业余时间到处游手好闲的身影不见了,没事我肯定一动不动的坐在电脑面前摆弄vb。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在生活有了寄托,是vb给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。vb是一门计算机编程语言,也算是一项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 多看多练是我独门绝技,一般人我不告诉他:多看------别人的代码,即使看不懂也没关系,可以把这些代码输入到机子里运行,然后根据运行结果去体会程 序的思路和用途。

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。越是这样越不要灰心,应该放松心态,一点一滴的去查。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。 通过这个学期的学习,对了vb这种高级语言有了初步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,包括教材上的例题程序,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收获了很多,我对下学期的计算机2级考试很有信心!!!篇二:vb学习总结也心得 学习vb两个星期以来, (其实真正时间也不到两个星期吧平时有空闲就学习了下 在这里是想告诉大家 vb基本操作不难,)第一个串口调试程序通了 能够实现更改波特率,串口号,接收数据实现字符也十六进制显示,在发送文本框输入数据 电机发送将在接收框内显示 记住将rs232的2和3管脚直接接起来

下面是我测试实际过程

大家也可以和我一样练习练习

下面是我的源代码可以供大家参考下也希望高手指点下 (框架就没必要给了) dim baud as string dim text2enbale, asciflag as boolean 停止显示标志 false将不能显示 private sub check2_click() end sub end select end sub case 300 baud = 300 case 600 baud = 600 case 1200 baud = 1200 case 2400 baud = 2400 case 4800 baud = 4800 case 9600 baud = 9600 case 19200 baud = 19200 case 38400 baud = 38400 end select else case 300 baud = 300 case 600 baud = 600 case 1200 baud = 1200 case 2400 baud = 2400 case 4800baud = 4800 case 9600 baud = 9600 case 19200 baud = 19200 case 38400 baud = 38400 end select end if end sub dim s as string dim a() as byte msgbox 串口未打开,请打开串口, 48, 警告 end if redim a(3) a(0) = &hf a(1) = &hfe a(2) = &hdd a(3) = &hcc s = text3.text a = s end if call delay(20) end sub dim idata as variant dim arr() as byte redim arr(intinputlen) 和上面一样 if asciflag = true then for i = 0 to ubound(arr) text2.text = text2.text + chr$(arr(i)) next ielse for i = 0 to ubound(arr) text2.text = text2.text + & arr(i) next i end if end select end sub private sub option1_click() if option1.value = true then asciflag = true end if end sub private sub option2_click() if option2.value = true then asciflag = false end if end sub private sub timer1_timer() label11.caption = time end sub private sub uart_open_click() shape2.backcolor = &hff& uart_open.caption = 关闭串口 else shape2.backcolor = &he0e0e0 uart_open.caption = 打开串口 end if end sub private sub text2_clr_click() text2.text = end sub private sub text2_en_click()text2enable = not text2enbale end sub end end sub private sub form_load() show 没有show后面的设置焦点将失败 错误 text2enbale = true option2.value = true 默认显示是以16进制显示 text3.text = text3.setfocus end sub 至此 一个简单的小工程就完成了,因为我是电子信息工程专业对高级编程还是很菜鸟的,其实这个功能也是我一直想能够自己实现的,因为之前一直以为学习vb 会花好多时间,就像之前一直在学习arm一样半天模不着头脑。所以迟迟不敢接触。估计也好多人和我一样,其实学习开始了 也会发现并不是想象中那样。 2012-7-30 青檐铃风篇三:vb学习心得体会 vb学习心得体会

这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心体会。

通过学习vb我基本学会了编辑一些小程序,掌握了一些基本的知识,得到了以下一些收获: 1.富业余生活。曾经业余时间到处游手好闲的身影不见

了,以前没事我肯定一动不动的坐在电脑面前摆弄电脑。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在有了vb,它给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。vb是一门计算机编程语言,也算是一 项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 只有这样我才呢学有所成

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人

开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

通过这个学期的学习,对了vb这种高级语言有了初

步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收了很多。

推荐第6篇:VB学习心得体会

VB学习心得体会

VB学习>心得体会

VB是一门程序设计语言,也需要一定的英语基础。VB既能充实我们的生活,武装我们的头脑,锻炼我们的意志,又能在以后需要的时候成为帮助我们成功的推进动力。对于VB的学习,我个人觉得兴趣爱好占一部分,更重要的还是自身的努力程度和平时的学习习惯。下面,我也简要介绍一下我对于VB课程的看法。

VB程序设计的入门学习并不难,但需要在学习的过程中掌握一个良好的程序设计习惯,这时,做好课前预习,上课认真听讲,下课认真消化所学内容显得十分重要。上机实验课努力完成老师留的课堂作业,能加深对所学知识点的理解和运用。能做到这些,也是积极主动学习的表现。

对于VB,每一个VB老师都是一个严谨的老师,要求严格是应该的。刚学习VB,严格要求格式,这是熟练之后能随意运用的基础,也是学好VB课程的重要前提。在课上,应该注意老师所提到的每一点要求,上机课认真完成老师布置的作业,注意每一个细节,争取做到零失误。

正式踏入VB课之后你会发现,编写程序代码其实是一件很有意思的事情。每一个程序当你完成时你都会有一种成就感。遇到问题时,程序代码可能会让很多人无从下手,建议大家多看别人设计好的程序代码,包括教材上的例题程序。读懂别人的程序后,要想他为什么这么设计,学到别人优秀的东西。积极跟同学讨论程序问题,在大家一起研究出一个正确的程序时,高兴的同时也促进了彼此的友情。

细节决定成败,VB程序设计的成败正是在于细节。纸上得来终觉浅,自己调试程序的时候总会犯很多错误,比如\'文件未找到\'\'下标越界\'等等,都是平时没有机会解决和一些曾经被忽视的问题,为了找到代码中错误和不符合要求的地方,标点符号都不能放过。细节决定成败,一个小小的分号也会起着扭转乾坤的作用。我个人,经常出现问题的地方在于与滚动条有关的事件。与滚动条有关的事件主要是Scroll和Change.当在滚动条内拖动滚动框时会触发Scroll事件,但注意单击滚动箭头或滚动条时不发生Scroll事件,而改变滚动框的位置后会触发Change事件。Scroll事件用于跟踪滚动条中的动态变化,Change事件则用来得到滚动条的最后的值。不注意时,容易忽略Scroll事件与Change事件的区别,出现编程的问题不容易得到解决。VB中,这样的小细节比比皆是,一定要注意细节才能学好VB这门课。

我对VB的兴趣从何而来呢?从我对电脑的喜爱说起。我参加过一个学校的计算机>培训班,之后在没事的时候自己还设计个ppt,photoshop什么的。大学加入广播站的网络技术部之后也学习了不少关于AU,AE,视频方面的制作。学习VB,我觉得能加深我对计算机已有认识的理解,能促进我对计算机的喜爱热情的提高,同时又能增长计算机知识。这么好的一门课,我为什么不好好学呢?兴趣来自于生活,来自于习惯,以来自于自身对VB这门课的看法。

通过对VB的学习,对VB语言有了初步的认知,对程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,然后想想别人为什么这么设计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,VB课程对我的计算机水平起到了推动的作用。对VB更多的是喜爱,那一点点,是宠爱。

推荐第7篇:vb学习综合资料

VB教程:序言-不再游戏

我们需要什么

我们需要什么?当我们在一个精彩的游戏世界中游历了一番之后,或是惊叹于某一工具软件的小巧精致之余,多少总会产生些许编程的冲动。编程吗,在以前如果你对电脑还是一个门外汉,那实在是一件可望而不可及的事情。如果运用基于DOS下的编程语言,譬如C、Qbasic、Pascal等等,真不知何年何月才能有所成就。

编程是需要天赋的,你必须在大脑中对整个程序有一个清晰的轮廓,一个高效的流程,这并不是每个人都能做到的,你必须思之慎之,这也使编程变成一件最枯燥无味的事情。但在第四代计算机语言(可视化编程)出现后,可以确切的说它开发了人们的更多天赋,并不局限于那些头脑异常清晰的人,每一个人都可以发现自己也可以编出一些从前不敢问津的程序,想象力的充分发挥才是第四代语言的精粹。

Visual Basic(以下简称VB)可以说是可视化语言的先驱了,而且它也是可视化程度最高的一个,从几年前VB诞生之日起到现在,它已经经历了五个版本,而且现在微软正在紧张的进行着VB6.0的研制、测试,这么高的更新率,不外乎说明两个问题:用户对VB的热衷,微软对VB的重视。不可否认微软对市场的预测能力是极为高明的,而它强大的技术、财力支持也使它在许多以前未进入的领域,在不长的时间内有成为最有力的竞争对手,如IE之于浏览器领域,《帝国时代》之于游戏都是最好的例证。对于VB现在也有一个很强的竞争对手――Delphi,有人把它称作VB杀手,这显然有偏激之处,VB的确有它的不足之处,但Delphi又何尝不是呢,而且以微软对VB的倾心,VB的功能必然会越来越强大。

VB的诞生

VB的出现可以说是Microsoft Windows的日渐成熟的必然产物。Microsoft Windows为程序员和最终用户提供了一个共同的人机界面。对用户,Windows提供了一个图形鼠标的操作环境,该环境对所有的应用程序都一样;对于程序员,Windows提供了一组预定义工具----称之为Microsoft Windows 的软件开发工具箱(SDK),该工具能使程序员建立一个与Windows界面相同的应用程序,而且,程序员不必关心最终用户的硬件配置情况。在这一开发环境中,程序员唯一困难的是Microsoft SDK提供了六百多个函数和与其一致的事件驱动(event-driven)编程技术。两种新方法的交叉使众多的程序员重新陷入困境,程序员不仅要掌握程序驱动编程技术和六百多个函数的功能,而且还得用C语言描述这些问题。因此一般情况下,程序员首先要掌握C程序设计技术,而后再开始学习SDK。这样的条件下就要求在Microsoft多任务环境下出现一种操作方便,使用简单的新工具----Visual Basic由此诞生。

何为可视

英文Visual的意思是“视觉的”,“可视的Baisc”这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做“可视”,你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。在VB中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框、无线钮,都是控件的种类,VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法。这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂的工作的。

我的希望:

我在学习VB的过程中也曾遇到了许多困难,而且用的参考书大都来自译文,毕竟美国人和中国人的表达方式有所不同。这也造成了理解上的困难,所以我想为什么我不能写一个给中国人看到VB教程呢,于是我这么做了。也曾经在杂志上发表过几篇用VB制作小程序的文章,但受杂志的限制(篇幅、内容等等)(我得听小编的),总没有一个机会系统的介绍一下VB,造成了小小的遗憾。不过,我自己的主页建好后,终于这个愿望可以实现了,利用HTML可以方便的把文字与图片结合起来,不失为一个教学良所,也希望能够得到大家的支持。 希望“VB教程”能给你我一个互相学习的机会,如果你能从中获益那将是我最大的快乐,那时你一定会发现编程比游戏有趣得多。:)

VB教程:第一章-Hello World!

没学过编程的人常常会问,编程难不难,这个问题很难回答。难,的确很难,要编一个好的程序尤其是这样,并且有些程序还要用到一些其他专业的知识,比如说一个图形处理程序,就要对图像的格式有所了解,甚至一些美术知识;但编程也很容易,就拿VB来说,编一个自娱自乐的小工具还是一件相当惬意的事情呢,当然它没法完全代替人工,譬如说完成你的家庭作业、向学校发射导弹„„

作为第四代计算机语言,VB的特点是显而易见的。因为是“可视的”所以我们不妨先看看VB的界面(图1_1)(我用的是VB4.0 32位版),很容易可以看到,屏幕上有五个窗口,(1)是菜单栏;(2)是工具箱(Tools Box),里面是VB所需的控件;(3)是VB程序要设计的窗体(Form);(4)控件及窗体的属性(Properties),在VB中每一个控件都有其自己的属性,比如文本框有Text属性,而任何一个控件都有一个自己唯一的名字,这使得我们无需编程就可以完成部分编程的工作;(5)是VB的文件控制窗口,VB的每一个程序称为一个项目(Project),一个项目文件里往往包括以下两种文件,窗体(Form)文件和模块(Bas)文件,当然还有Cla文件,这些文件组成一个完整的程序,而项目文件(Vbp)则用来描述程序所包含的内容。

实际上,我一直认为学习的最好方法就是实际操作一下,好,下面我们就来看一个最简单的程序,和所有的编程教科书一样,我们把第一个程序称为“Hello,world!”。

首先,我们先来熟悉一下窗体。如果你用过Win95附件所带的画图板的话,那么你一定会很快熟悉VB的窗体设计方法,用鼠标单击一下工具箱中的任何一个控件,然后在窗体上任意拖动鼠标,你就会得到一个所需的控件;当然还有其他的方法得到控件,你可以在工具箱上双击得到一个控件;或是按住Ctrl键,再单击所需控件,重复第一次的步骤,你会发现,不用再回去点击工具箱了,点右键可以恢复鼠标指针,这样对于重复画同一个控件尤其有用。

对于我们的第一个小程序,知道这些就已经足够了。现在你可以在我们的窗体上画如下控件一个图片框(Picture Box),用来显示图画,每一个控件建立的时候,系统都会给它设一个默认的名字(Name),这个PictureBox的名字就叫做Picture1,为了方便起见,我们以后的控件都使用缺省的名称。选定Picture1,在左边的属性窗口中找到Picture属性,单击会出现,点击为Picture1选一个图像文件,VB支持的图像文件有BitMap、WMF、ICO三种,微软为用户提供了一套图标文件,存放在VB目录的Icons目录下,选择Icons\\misc\\face01.ico文件,这样图标就被装入了Picture1。再选择Pictrue1的Autosize属性,设为1-True,则会发现Picture1以变成和图像一样大了;把BorderStyle定为0-None,去掉图片边框。用同样的方法再添加两个图片框:Picture2(Picture:face02.ico),Picture3(Picture:face03.ico)。

图片框完成了,第二步,建立三个无线钮(Option Button),由于它象收音机的无线电按钮而得名),把它们的标签名属性(Caption)分别定为“悲哀”,“高兴”,“没治了”,放置成图1_2的样子。

最后我们还需要三个文本框(Text Box),分别把它们的Text属性设为””(空字符串),程序的最后界面如图1_3,这样按下菜单窗口的运行按钮,运行一下程序,还可以吧,不过现在程序还无法工作,就算是VB也不能免俗,还必须输入代码才能使程序运作。

VB是一门典型的面向对象编程的语言,它的整个程序都是由事件驱动的。那么,什么是事件呢?其实,我们的生活中充满了各式各样的事件,比如说“闯红灯”这个事件的发生会导致被警察追杀、走路撞到电线杆时会痛。上面的例子虽然有些滑稽,但它可以清楚的解释事件的含义,就象你马上就能体会到的在什么地方单击鼠标时会发生什么,按下键盘时会发生什么,这就是事件,而事件就是这么容易。

要进入VB的代码设计区,只需在需要的控件或窗体上双击鼠标即可得到这样的窗口。如图1_4,每一个VB程序都由若干小程序组成,这使得用VB编程更加容易,这些小程序,分为“过程”(Procedure)和“函数”(Function),二者都可以传递参数,所不同的是函数有一个返回值,而过程没有,仅此而已。

双击窗体的任何一个部分,将出现一个空的过程:“Form_Load()”,这是一个非常重要的过程,它所驱动的事件就是该窗体被加载的事件,打个比方,就象计算机启动时的批处理程序(Autoexec.bat)。 这个程序里我们要对控件进行一些设置。我们刚才也曾对控件进行设置,但那是在程序设置中进行的,有时我们也需要在程序中改变某些控件的属性,通过程序代码。VB中规定,一个控件属性的访问方法:名称.属性,于是我们对本程序的控件进行如下设置:

Private Sub Form_Load()

Picture1.Visible = False Picture2.Visible = False Picture3.Visible = False Text1.Visible = False Text2.Visible = False Text3.Visible = False

End Sub

Private表示此过程是局部的,Sub表示子过程的开始,与之相对的是End Sub表示过程的结束,Visible属性表示控件的可见性,这个属性的值有两个True和False。

注意:

VB里对大小写是不加区分的,而且,已定义的名称,以后再用到时,系统会自动把它变成相应的大写或小写。

小知识:

1.VB里的对变量及常量的规矩。

变量一般为Abc的格式,常量为ABC,另外这些变量和常量名不得同VB内的关键字相同,也不可以使用一些特殊符号,这些我们将在以后介绍,注意在学习中养成好习惯,使程序便于自己和别人的浏览。

2.程序书写的窍门:

不要真的一句一句把程序打完,利用快捷键:拷贝Ctrl+C,剪切Ctrl+T,粘贴Ctrl+P。

按下F5,运行一下程序,现在发现只剩下无线钮了。如图1_5。

Private Sub Form_Load()

Picture1.Visible = False Picture2.Visible = False Picture3.Visible = False Text1.Visible = False Text2.Visible = False Text3.Visible = False Option4.Left = -2000 Option4.Value = True

End Sub

Left属性表示控件离窗体左边框的距离,设置为-2000,则在窗体内不会看到这个控件,并使之Value=True。再运行程序,一切如愿,如图1_6.

注意:为什么不用Option4.Visible=False?

因为,一旦设置无线钮为不可见,那么再使它的Value为真是没有意义的,不信自己试试。

下面我们可以继续进行了。在刚才的代码窗口里,将Object选择为Option1,Proc选择为Click,即得到一个Option1_Click的过程。代码如下:

Private Sub Option1_Click()

Picture1.Visible = True Picture2.Visible = False Picture3.Visible = False Text1.Visible = True Text2.Visible = False Text3.Visible = False Text1.Text = \"再见,残酷的世界。\"

End Sub

相同的建立Option2_Click和Option2_Click:

Private Sub Option2_Click()

Picture2.Visible = True Picture1.Visible = False Picture3.Visible = False Text2.Visible = True Text1.Visible = False Text3.Visible = False Text2.Text = \"今天心情不错。\"

End Sub

Private Sub Option3_Click()

Picture3.Visible = True Picture2.Visible = False Picture1.Visible = False Text3.Visible = True Text2.Visible = False Text1.Visible = False Text3.Text = \"Hello,World。\"

End Sub

好,我们的开山之作完成了!按下F5,玩一下吧。这个程序虽然简单,但也用到了许多基本知识,你开始感兴趣了吗?^_^

VB教程:第二章-事件、属性及数据类型

以后两章可能会比较枯燥,但不可否认也很重要,所以为了学好VB,我们一定要打好基础才行。

一、事件

通过上一章的例子,你可能对“面向对象的编程”已经有了一定了解,它是由事件驱动的,对于不同的对象,所能感应到的事件也会不同,譬如说当你把鼠标移进某一区域时就会触发MouseMove事件,这很直观,也容易理解,但也有些事件比较抽象,下面我来对一般的事件进行一下解释。

窗体和图象框类事件

Paint事件:当某一对象在屏幕中被移动,改变尺寸或清除后,程序会自动调用Paint事件。注意:当对象的AutoDraw属性为True(-1)时,程序不会调用Paint事件。

Resize事件:当对象的大小改变时触发Resize事件。

Load事件:仅适用于窗体对象,当窗体被装载时运行。

Unload事件:仅适用于窗体对象,当窗体被卸载时运行。

2.当前光标(Focus)事件

GotFocus事件:当光标聚焦于该对象时发生事件。

LostFocus事件:当光标离开该对象时发生事件。

注意:Focus英文为“焦点”、“聚焦”之意,最直观的例子是,比如有两个窗体,互相有一部分遮盖,当你点下面的窗体时,它就会全部显示出来,这时它处在被激活的状态,并且标题条变成蓝色,这就是GotFocus事件,而相反,另外一个窗体被遮盖,并且标题条变灰,称为LostFocus事件。上面所说的“光标”并非指鼠标指针。

3.鼠标操作事件

Click事件:鼠标单击对象。

DbClick事件:鼠标双击事件。

MouseDown、MouseUp属性:按下/放开鼠标键事件。

MouseMove事件:鼠标移动事件。

DragDrop事件:拖放事件,相当于MouseDown、MouseMove和MouseUp的组合。

DragOver事件:鼠标在拖放过程中就会产生DragOver事件。

4.键盘操作属性

KeyDown、KeyUp事件:按键的按下/放开事件。

KeyPre事件:按键事件。

5.改变控制项事件

Change事件:当对象的内容发生改变时,触发Change事件。最典型的例子是文本框(TextBox)。

DropDown事件:下弹事件,仅用于组合框(ComboBox)对象。

PathChange事件:路径改变事件,仅用于文件列表框(FileBox)对象。

6.其他事件

Timer事件:仅用于计时器,每隔一段时间被触发一次。

二、属性

每个对象都有它的属性,并且“Name”属性是共有的,有了“Name”属性才可以在程序中进行调用。对于属性,可以在窗体的布局操作中完成,也可以在程序运行中改变,这取决你的需要,但有些属性是只读的,它只能在控件布局时改变。我将在以后的实例中具体介绍各个属性的作用。

三、数据类型

学过编程的人都知道大多数的计算机语言都规定了各自的数据类型,VB也不例外。其实,在一个最简单的程序中数据类型是可以不作规定的,也就是说,变量可以使用各种类型,但是在一个复杂的程序里,这样做就很危险,因为很可能给同一个变量赋予了不同的类型,而导致程序出错。所以,为了程序的严谨和便于查看,正确的定义数据类型是必要的。定义数据的另一个原因是,不同的数据占用不同的内存数量,譬如整型(Interger)数据占2字节,而长整型数据占4个字节,定义合适的数据类型,不管你相信不相信,它可以节省内存!

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,每个字符占一字节,可以储存0~65,535个字符),布尔(Boolean,只有两个值True/-1,或False/0)。

数据类型的定义方法:

定义变量最简单的方法是用“Dim”关键字,它的语法:

Dim 【变量名】As 【数据类型】

如:Dim Index As Integer

也可以在一行中定义多个变量,如:

Dim Index As Integer , Dim Number As Long

把多个变量定义成同一类型可以写成:

Dim Index , Number As Integer

有时为了简便,也以符号进行简单的定义,作用是和上面一样的。整型可以用“%”代替,长整型可以用“&”代替,实型可以用“!”,双精度实型可以用“#”定义,如刚才的第一个例子可以写成:

Dim Index% 等价于 Dim Index As Integer

对于常量的定义用Const定义,如:Const COLOR=255。

为了在程序中便于查阅,我们对变量和常量的写法进行规定,变量一般用小写方式,常量则全部大写。

注意:使用常量的好处,对于程序中经常出现的数值,应设常量等于它,这样一是书写方便,其二,如果要改变该数值,只需改变定义常量的语句值,而不需改变每个语句,提高了效率。

数组的定义类似于变量定义,所不同的是数组需要指定数组中的元素个数,例如:

Dim IntegerArray(99) As Integer

这个数组中包含100个元素,脚标从0到99。

也可以指定脚标的起始值,例如:

Dim IntegerArray(2 to 10) As Integer

这个数组含有九个元素,脚标从2到10。

还可以定义多维数组:

Dim ThreeD(4,2 to 5,3 to 6) As Integer

上例定义了一个三维数组(4×4×4)。

记录的定义

记录定义是把控制权交给用户的方法,它让用户可以定义自己的数据类型,它使用关键字“Type”,方法是:

Type 【数据类型标识符】

As As As „„„„„„„„„„

End Type

例如,定义一个地址数据:

Type Addre

Street As String ZipCode As String Phone As String

End Type

这个地址数据里包括三个属性,街区、邮政编码和电话,可以把某数据定义成此类型:

Dim MyHome As Addre

要调用或改变“MyHome”的值时,类似于对对象的属性的操作:

变量名.域名=“„„”

为了简化书写重复的部分,可以用关键字“With”:

With MyHome

.Street=”阜成路” .ZipCode=”100037” .Phone=”12345678”

End With

VB教程:第三章-VB语言

一、VB与Basic

VB之所以叫做“Visual Basic”就是因为它使用了Basic语言作为代码,所以它们之间有着千丝万缕的关系,如果学过Basic的话,看到VB的程序结构会感到很亲切。但VB作为新生物,也超越了Basic的限制,有了许多自己的特点:

VB建立了一种新的变量类型――货币型变量,通过使用仅带有二位小数的货币变量,就能避免因使用实型变量而带来的数值积累误差问题。

VB在调用函数(Function)时,必须在函数名后跟一对括号。

VB对白兰地使用范围重新做了规范,在Basic里把隐含变量都当作全局变量,而在VB里对隐含变量都当作局部变量。

VB里的说明语句(Declare),仅支持动态链结库(DLL)的子程序和无变量函数。

使用数组,必须事先用Dim或Redim进行定义。

二、注释语句

在使用注释语句之前必须先了解注释的作用,注释不仅仅是对程序的解释,有时它对于程序的调试也非常有用,譬如说可以利用注释屏蔽一条语句以观察变化,发现问题和错误。以后注释语句将是我们在编程里最经常用到的语句之一。

在VB里,注释语句有两种,一种是用“Rem”关键字,这跟DOS里的批处理文件的用法一样,还有一种是利用单引号“’”,例如:

‘Dim a As String 与

Rem Dim a As String 的作用是一致的。

三、长语句的分行

在比较早的版本中,因为没有象C等语言用“;”隔开语句与语句,VB的语句是必须写在一行里的,不过后来版本的VB里如许用分行符“_”把一个长语句分成若干行来存放。

四、条件语句

如果你学过任何一种编程的话,都会知道在程序里控制其流程的有两种语句,条件与循环,VB自然也不例外,其实不管哪种语言,条件和循环的样子都差不多,只不过各有各的规矩罢了。

在条件语句里,我们先来学习“If„„Then„„”语句。

它的一般语法是:

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 语句N+1

用了过多的Else后你会感到很不方便,而且程序结构也不清晰,所以大多数的语言还有Select语句帮助解决这个问题。

VB里的Select语句的格式是这样的:

Select Case

Case

……

Case

……

Case

……

……

…… Case Else

……

End Select

例如:

Select Case a%

Case 1

Print “a=1” Case 2

Print “a=2” Case Else

Print “a does not equal to 1 or 2.”

End Select

五、循环语句

循环结构是计算机语言里一种重要的结构,它的应用广泛,最简单的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件事重复指定的次数,这样就不用把要重复的语句输入多次,而通过循环结构完成,非常方便。

C语言里有一个“for”循环语句,VB里也有“For”关键字,作用也差不多,只是VB的“For”语句更容易理解。它的格式是:

For = To [Step ] „„ „„

Next

在默认情况下,Step被设为“1”,可以省略,Step也可以设为负值,例如:

Dim a=0

For I=1 To 10

a=a+I

Next I

这是一个最简单的累加器的例子,把1到10累加在一起,然后赋值给“a”这样的效果和上面是一样的,只不过是倒着加罢了,请看:

Dim a=0

For I=10 To 1 Step –1

a=a+I

Next I

While语句也是一个很常用的循环语句,它的形式很多。

Do While „„ Loop语句

While „„ Wend 语句

Do …… Loop While

While后面都跟逻辑条件判断,“Do While „„ Loop语句”和“While „„ Wend 语句”作用相似,都是先判断While后面的条件是否为“真”,如果为“真”则执行里面的语句,如果为“假”,则退出循环,循环直至条件为“假”终止。“Do „„ Loop While ”与前两者的区别在于,它不管条件的真假,都会先执行“Do”后面的语句,也就是说,它至少执行语句一次。

与While用法相似的还有Until语句,它是直至条件为真则终止循环,句式把While上述三个语句的While换成Until即可,但是因为容易记混,所以我建议只用While即可。Until 可以相当于While Not 。

For循环和Whlie循环应当根据适当的环境使用,它们有时也可替换。

六、运算操作

数学运算

+:加法运算,也适合于字符串的之间的合并运算。

-:加法运算。

*:乘法运算。

/:除法运算。

\\:整除运算。

Mod:求余运算。例如:a Mod b表示a被b整除以后的余数。

^:幂运算。A^B表示以A为底的B次方。

关系运算

关系运算也称比较运算,它表示不等式的真或假,VB共提供六种运算符,分别是=(等于),>(大于),=(大于等于),(不等于)。

逻辑运算

逻辑运算是对真或假的运算,我将列表说明:

A B Not A 非

And 与 Or 或 Xor 异或

Eqv 相等

Imp 蕴含

T T F T T 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

T――True F――False

七、数据与定义

本标题的内容已经在上一章向大家详述过,在这里就不再重复。

八、函数与过程

函数与过程有许多相似的地方,它们之间最大也是最本质的区别就在于,函数有一个返回值,而过程只是执行一系列动作,所以可以简单的把函数理解成为一个变量,而VB中的每个事件都是一个过程,比如Command1_Click()就是一个过程。

因为在程序设计中经常会有重复的地方,所以把它做成一个函数或一个过程,在使用时进行调用,可以节省大量的输入代码的时间,而且使用函数和过程也便于程序的结构化和修改查看。函数和过程都可以有参数,也可以没有参数。

关于函数和过程我将在以后的章中配合实例讲解,请您继续留意VB教程。

VB教程:第四章-按钮

从本章开始我们将正式进入VB的编程世界,但这还仅仅是个开端,要编出功能强大的软件,还要学很多东西,那就要看以后的VB高级教程了,我也得努力学啊!

按钮是我们在Windows操作见到最多的控件,它们有着各种各样的功能:“确认”、“取消”、“下一步”等等,这些都是按钮的表现,另外还有很多图形话的按钮,其实它们并没什么不同,所有的按钮都是通过单击(click)事件实现的,只不过是在外表不同罢了。下面就让我们建立一个最简单的按钮,双击工具箱的CommandButton,将在窗体上建立一个形如图4-1的按钮,它的缺省名(Name属性)为Command1,我们可以把它改名为cmdExit,把Caption属性设为“退出”,然后双击,按钮填写代码:

Private Sub cmdExit_Click()

Unload Me

End Sub

按下F5或者工具条上的播放按钮,运行程序。图4-2当你按下退出按钮的时候,就会自动退出程序,原因是当你单击按钮时激活了它的Click事件,执行“Unload Me”语句,使得窗体被卸载。

上面举了一个比较简单的例子,下面的例子稍微复杂些:

新建窗体,控件布局如图4-3所示,包括一个List控件,一个Text控件和两个按钮(Command1和Command2),(比较简单的程序我们都采用缺省名),对它们属性做如下修改:

List1 Caption=“请输入你的名字”

Text1 Text=“”(空字符串) Button1 Caption=“复原”

Enabled=False

Button2 Caption=“清除”

把使用Button1的Enabled属性设为False(假),是使程序在初始时,无法单击Command1。按F5,运行程序,图4-4,复原按钮成为灰色,不可选。

当然现在程序还什么也不能做,下面我们在程序中添加代码:

首先在General里声明全局变量:

Dim StoreString As String \'用来储存字符串

※注意:为什么用全局变量?

VB里每一个小过程都相当于一个程序,程序里的变量称为局部变量,是只能在程序内部使用的,而当程序调用结束后,由于从内存中被清除,所以变量储存的值也就消失了,这里的全局变量是用来在过程中传递字符串。

接着填写以下代码: Private Sub Command1_Click()

Text1.Text = StoreString Command1.Enabled = False

End Sub

Private Sub Command2_Click()

StoreString = Text1.Text Text1.Text = \"\" \'清除

Command1.Enabled = True

End Sub

运行程序,如图4-5。按下“清除”,文本框被清除,按下“复原”,文本有被恢复,许多程序中的Undo/Redo就是利用这个原理实现的,现在知道为什么内存越多越好了吧。

我们在把程序修改一下,把Button2删除,Button1的Enabled属性改为True,Caption改为“清除”,填写代码:

Private Sub Command1_Click()

If Command1.Caption = \"清除\" Then

StoreString = Text1.Text Text1.Text = \"\" \'清除

Command1.Caption = \"复原\" Else

Text1.Text = StoreString Command1.Caption = \"清除\"

End If

End Sub

同样可以上面的功能,但是却少用了一个控件,控件使用少的程序启动会快些。

下面的例子要更加复杂些,大家一定都用过Windows附件中的计算器,它是一个标准的科学计算器,利用VB我们也可以做到,只是没有那么复杂,四则运算而已。

先建立一个新的项目文件,里面包含一个Form1的窗体。然后,添加控件,包括一个Text框(Text1),和17个按钮,这17个按钮使用的名称都是Command1,只是Index属性不同,就好象一个数组,创立一组按钮的方法是,先在窗体上建立一个按钮(Command1),然后在Command1上击鼠标右键,选择复制(Copy),然后在窗体上任意部位击右键,选择粘贴(Paste),系统会提示是否创建控件组,选择“是”,重复上面步骤,直至创立17个按钮为止。各控件属性如下表:

Text1 BackColor=&H00C0FFFF& Text=“0.”

Command1 Index 0――16

Index 0――9 Caption=“0”-“9” Index 10 Caption=“.”

Index 11 Caption=“=”

Index 12 Caption=“+”

Index 13 Caption=“-”

Index 14 Caption=“×”

Index 15 Caption=“÷”

Index 16 Caption=“清除”

如果想改变一些其他的属性,比如字体,可以自己定义一下Font属性,如果相对多个控件的共同属性进行改变,可以在窗体上按下鼠标,拖动,把多个控件一起选定,然后对它们的共同属性进行修改。

别看这个东西小,还费了近我两个小时呢,不觉大叹手生,里面也有些地方很绕弯子,我尽量解释清楚。

在编写程序之前,我们先来回顾一下计算器的使用。

按下数字键在液晶屏上会出现数字,这是最基本的功能。

第一次按下运算键,再按下数字键,将重新输入第二个数字,再次按下运算键,将算出前两个数的结果,然后按下数字键,将又重新输入新的数字。

输入数字后,按下“等于键”将仍输出原来的数字,输入运算符和第二个数字后在按下“等于”,将得到二者的结果。然后又重复第

二、三步。

按下“清除”,数据被全部清除。

了解了这些,我们一步一步实现。 先实现数据的输入,请看代码。 与未创立组的控件相比,它的事件里多了Index参数,组里所有的对象都使用同一个事件。 先在General里声明窗体级全局变量: Dim Num1, Num2 As Single Dim StrNum1, StrNum2 As String Dim FirstNum As Boolean \'判断是否是数字开头

因为Text1里是存放字符串的,所以要把输入的数据进行运算,必须把字符型变量转变为实型变量,分别用Num

1、Num2和StrNum

1、StrNum2进行存放。在Form_Load事件里给变量初赋值:

Num1 = 0 Num2 = 0 StrNum1 = \"\" StrNum2 = \"\" FirstNum = True

因为17个按钮使用的是同一事件,所以我们用一个Select Case语句区分各个按钮,双击任意按钮输入代码:

Private Sub Command1_Click(Index As Integer)

Select Case Index

Case 0 To 9

If FirstNum Then

StrNum1 = Str(Index)’实型转字符型 FirstNum = False’初赋值为假

Else’非初赋值

StrNum1 = StrNum1 + Str(Index)

End If

Text1.Text = StrNum1’显示

End Select

End Sub

运行程序的话已经可以输入数据,下面我们来处理小数点。 在General里声明新的变量:

Dim PointFlag As Boolean \'判断是否已有小数点

我们知道小数点只能输入一次,一个数据中不能有多个小数点存在,所以需要一个布尔变量做判断。

在Form_Load里进行初赋值:

PointFlag = False

在Command的单击事件里接着上面输入新的代码:

Case 10

If Not PointFlag Then’如果没有小数点

If FirstNum Then’如果是第一个字符

StrNum1 = \"0.\" FirstNum = False Else

StrNum1 = StrNum1 + \".\"

End If

Else’已有小数点

Exit Sub’则退出单击事件

End If

PointFlag = True Text1.Text = StrNum1

下面会复杂一些,我们先跳过等号,而来处理四则运算:

先在General里声明新变量:

Dim Runsign As Integer \'储存运算符号

Dim SignFlag As Boolean \'判断是否已有运算符号

然后在Form_Load中进行初赋值:

Runsign = 0 SignFlag = False

在接下的Command1_Click中继续输入代码:

Case 12 To 15

FirstNum = True’使下一次可以输入新数据 PointFlag = False \'还原标记值

If SignFlag Then’前面已有运算符未运算

Call Run Else

SignFlag = True StrNum2 = StrNum1’把字符串1复制给字符串2 StrNum1 = \"\"’字符串1清空

End If

Runsign = IndexNum2

Case 3’乘

equal = Num1 * Num2

Case 4’除

equal = Num1 / Num2

End Select

StrNum2 = Str(equal) StrNum1 = StrNum2 Text1.Text = StrNum2

End Sub

下面是其余的代码:(在Command1_Click事件里,接着写)

Case 11

If Not SignFlag Then

Text1.Text = StrNum1 equal = Val(StrNum1) FirstNum = True PointFlag = False Else

Call Run SignFlag = False

End If

Case Else’清除按钮

Call ClearData

里面又用到了一个ClearData过程,实际上就是Form_Load里的变量初赋值,代码如下:

Sub ClearData()

Num1 = 0 Num2 = 0 StrNum1 = \"\" StrNum2 = \"\" FirstNum = True PointFlag = False Runsign = 0 SignFlag = False Text1.Text = \"0.\"

End Sub

这样完整的程序就完成了,本章介绍了VB的第一个控件――按钮,并且举例,希望你继续看下一章――菜单。

下面给出完整的程序代码:

Dim Num1, Num2 As Single

Dim StrNum1, StrNum2 As String

Dim FirstNum As Boolean \'判断是否是数字开头

Dim PointFlag As Boolean \'判断是否已有小数点

Dim Runsign As Integer \'储存运算符号

Dim SignFlag As Boolean \'判断是否已有运算符号

Sub ClearData()

Num1 = 0

Num2 = 0

StrNum1 = \"\"

StrNum2 = \"\"

FirstNum = True

PointFlag = False

Runsign = 0 SignFlag = False

Text1.Text = \"0.\"

End Sub

Sub Run()

Num1 = Val(StrNum2)

Num2 = Val(StrNum1)

Select Case Runsign

Case 1

equal = Num1 + Num2

Case 2

equal = Num1Command1.Width) / 2

\'重叠三个图片框

Picture2.Left = Picture1.Left

Picture2.Top = Picture1.Top

Picture3.Left = Picture1.Left

Picture3.Top = Picture1.Top

End Sub

下面我来讲一讲程序是怎样运行的,我们将用到Text的Change事件,每当字符串改变一次就对它进行一次检查,算出已经说的字数,当字数超过10时,下面的红绿灯会变成黄色,并且在这时随机抽取一个数,它在一个范围内出现的可能是10%,如果在这个范围内就可以免交罚金,如果不在范围则继续,当文字超过20的时候,红绿灯会变成红色,再一次抽取随机数字,步骤同上,如果30个字已满,再进行一次检查,如果你真的那么不幸就该罚款了。

程序的步骤清楚了,我们在来看看程序的要点。由于中文是双字节字符,也就是说一个汉字占两个ASC码的位置,而VB显然是为英语国家设计的用Len函数无法返回汉字字节,也就是说一个汉字和和一个ASC字符在Len函数中得到的值是一样的,这就需要特殊处理。用Asc()函数,在括号内放入一个ASC字符或字符串,它会把第一个ASC码转化为0-255的数值,而把一个汉字放入,它的值必然不在0-255,这也就可以作为判定汉字的基础。我们可以把英文算作半个汉字。

下面我们来看看代码:

在General 里声明窗体级变量:

Dim Level As Integer

Private Sub Command1_Click()

Unload Me End Sub

Private Sub Text1_Change()

Dim StrLength As Integer’字符串长度

Dim RandomNum As Single’随机数

Dim Str1 As String

Dim a As String

Dim i, Temp

StrLength = 0’每次开始时把字符串长度还原为0

a = Text1.Text

For i = 1 To Len(a)’Len(a)代表字符串的长度

Temp = Asc(Mid$(a, i, 1))’挨个取字符

If Temp >255 Or Temp

StrLength = StrLength + 2 Else

StrLength = StrLength + 1

End If

Next i

StrLength = StrLength / 2

Select Case StrLength

Case 0 To 9

Picture1.Visible = True

Picture2.Visible = False Picture3.Visible = False

Label2.Caption = \"慢慢说。你还有\" & Str(30StrLength) & \"个字可以说\"

End If

Case 20 To 29

If Level = 2 Then RandomNum = Rnd * 10

If RandomNum 9 Then

Text1.Enabled = False

Label2.Caption = \"很抱歉这是个误会„„\"

Command1.Visible = True

Command1.Caption = \"您可以离开了\"

End If

Level = 3 Else

Picture1.Visible = False

Picture2.Visible = False

Picture3.Visible = True

Str1 = \"我已经不耐烦了!\"

Label2.Caption = Str1 & \"你还有\" & Str(30 - StrLength) & \"个字可以说\"

End If

Case Else

Text1.Enabled = False

Label2.Caption = \"你已经没有机会了!\"

Command1.Visible = True

Command1.Caption = \"交钱吧,肇事犯!\"

End Select

End Sub

中间有几个函数需要解释一下:

Mid可以从字符串中取出一部分,返回字符型,格式:

Mid(字符串,从第几个字符开始,取字符的长度)

Asc可以把字符转换为ASCII码,格式:

Asc(字符串)

Rnd,取得大于0但小于1 的数值,可以没有参数。

怎么样,十分简单吧,我们将在下一次继续讨论VB的输入机制,再见!

VB教程:第六章(2)-输入(2)

在继续上面的内容时,我想再回顾和强调几个在字符串操作中经常函数:

先是几个已经接触过的,Mid(),Asc(),Len(),它们的语法分别是:

Mid(字符型,起始字符,长度)

返回子字符串,如果从字符串的第一个字符取起,起始字符为1,依此类推。

Asc(字符型)

返回数值,如果参数不是一个字符,而是字符串(多个字符),将返回参数的第一个字符ASCII值。

Len(字符型)

返回字符串的长度。 下面我再为你解释几个新的函数:

Left(字符串,长度)

将返回字符型,从字符串的第一个字符向左取字符串,与之相对应的是Right(),它将从字符串的最后一个字符向右取字符串。

Chr(数值型)

该数值范围从0-255,返回字符型,如Chr(65)可返回字符“A”,这样可以输入一些用键盘无法输入的字符。

Str(数值型)

该函数把数值型转换为字符型,也许你觉得数值“123”和字符串“123”没什么区别,但在内存中一个ASCII字符是占一个字节,也就是说字符串“123”占3个字节,而当数值“123”是整型时,它占两个字符,当它是长整型时,占4个字节。与之向对应的是Val(数值型),它把数值型转换为字符型。

上面的函数都是以后要经常用到的,请将它们熟悉。

上次讲到文本框的用处,还有意思吗?你是否能把上次的程序稍稍变动一下,来计算出输入的单词数,提示一下,单词与单词之间是用空格分隔开的。

我们继续下面的内容。

上次说到,输入不仅仅是向文本框输入字符,凡是从外界向程序传递数据都可以叫做输入,我们一一说明白。

无线钮,记得我们曾在第一章中完成过我们的第一个程序――“Hello World!”它就是一种输入的方法,在设计VB程序时可以通过一组这样的无线钮,它们之间互相排斥,也就是说,只能有一个按钮被选中。它因为很象无线电收音机上的按钮因而得名无线钮。如果要在一个窗体内放置多组无线钮必须用Frame控件把它们区分开来。下面我们在来完成一个例子,顺便熟悉一下另外两个处理字符串的函数――LTrim()和Rtrim(),它们分别用来删除字符串左边的空格和右边的空格,让我们看看它们是如何工作的。

程序窗体如图6-8,由于窗体比较简单,无需修改更多的属性,一共有三个文本框(Text1到3),分别用来显示输入字符,显示把空格换成星号的字符,和经过处理的字符,还有三个无线钮(Option1到3),要修改的只有Caption属性,分别是“删除左边的空格”、“删除右边的空格”和“删除两边的空格”。因为空格在我们在文本框中无法看到空格,所以我们通过一个称作AddStar的函数把原有字符串中的空格转换为星号,使我们能够看到函数的效果。下面在程序中添加代码,首先在General中声明窗体级变量:

Dim LTrimmedword$, RTrimmedword$ \'删除左边空格和右边空格后的字符串

Dim LRTrimmedword$ \'删除两边空格后的字符串

然后,我们通过一个叫做addstar的函数为字符串加上星号,以前曾说过函数与过程的分别,函数会返回一个函数值,所以addstar也就相当于一个变量,其实这很好理解,就象中学代数中的函数,函数就相当于变量Y,而函数中的参数则相当于自变量X,当然可能有很多自变量X

1、X2„„请原谅,我并不想在这里上数学课,因为我厌恶那玩意儿,特别是上了大学之后,好在大二以后就再也不会有数学课了,哈哈„„

Function addstar(tempword As String) As String

Dim charindex% Dim pasteword$ \'加星号后的字符串 For charindex = 1 To Len(tempword)

If Mid(tempword, charindex, 1) = \" \" Then \'如果字符为空格

pasteword = pasteword + \"*\"

Else: pasteword = pasteword + Mid(tempword, charindex, 1) End If Next addstar = pasteword \'返回函数值

End Function

下面的代码很简单,并且我为它做了注释,就不再一一解释了,我只想简要的提几句,Ltrim和Rtrim只有一个参数(字符型),另外下面用到了焦点事件,我们曾在第三章中介绍过,当Text1得到焦点(GotFocus)时,清空所有的文本框,当它失去焦点(LostFocus)时,对字符进行addstar并且在Text2中显示。

Private Sub Text1_GotFocus() \'但焦点于Text1

\'清除所有文本框中的字符 Text1.Text = \"\" Text2.Text = \"\" Text3.Text = \"\"

End Sub

Private Sub Text1_LostFocus()

Dim Origionword As String Origionword = Text1.Text Text2.Text = addstar(Origionword) LTrimmedword = addstar(LTrim(Origionword)) RTrimmedword = addstar(RTrim(Origionword)) LRTrimmedword = LTrim(RTrim(Origionword))

End Sub

Private Sub Option1_Click()

Text3.Text = LTrimmedword \'显示删除左空格后的字符串

End Sub

Private Sub Option2_Click()

Text3.Text = RTrimmedword \'显示删除右空格后的字符串

End Sub

Private Sub Option3_Click()

Text3.Text = LRTrimmedword \'显示删除两边空格后的字符串

End Sub

最后结果如图6-9。

与无线钮相对的是检查框,在同一范围内一组无线钮只能有一个被选中,而检查框则可以有多个选择,就象在添表时,性别那项只能有一个选择,而在描述你以前的职业时可以有学生、程序员、家庭教师或者什么,总之有很多选择,下面我们举一个简单的例子加以说明。

假设编写了一个共享软件,在让用户注册的时候你想知道你的用户使用的计算机情况,你就需要一个调查表,为了使这个调查表不止枯燥,可以在这个程序中加入一些图形。新建一个项目文件,窗体布局如图6-10。

程序很简单,一共有两个框架(Frame1和Frame2),它们的Caption分别为“选择你的计算机拥有的配置”和“这是你的计算机系统”,在Frame1有四个检查框(Check1到Check4),Caption分别为“网络系统”、“鼠标”、“密码保护”和“电子邮件”,另把Check4的Enabled属性改为False,使其无效;在Frame2中放置四个图片框(Picture1到Picture4)与四个检查框向对应,请把所有图片框的BorderStyle属性设为0(无边框),它们的Picture属性请根据上图,在存放图标的目录中找到相对的图标。下面是程序代码:

Private Sub Check1_Click()

If Check1.Value Then

Check4.Enabled = -1 Picture1.Visible = -1

Else: Check4.Enabled = 0 Picture1.Visible = 0 Check4.Value = 0 Picture4.Visible = 0

End If

End Sub

Private Sub Check2_Click()

If Check2.Value Then

Picture2.Visible = -1

Else: Picture2.Visible = 0

End If

End Sub

Private Sub Check3_Click()

If Check3.Value Then

Picture3.Visible = -1

Else: Picture3.Visible = 0

End If

End Sub

Private Sub Check4_Click()

If Check4.Value Then

Picture4.Visible = -1

Else: Picture4.Visible = 0

End If

End Sub

这个程序比我们见过的任何程序都简单,就不再做说明。

(第六章 未完)

VB教程:第六章(3)-输入(3)

首先,我想先对第六章的拖拖拉拉表示歉意,一是因为它实在太长了,二也是因为我自己太懒了,今天写几个字,明天添两笔,以致于写了三次才将它真正完成,还请大家原谅。

好,废话少说,让我们赶快切入正题。上次我们讨论了无线钮和检查框的使用方法,相信你已经熟悉,因为它们实在太简单了,现在让我们继续“输入”的最后几个部分。

滚动条(ScrollBar)在视窗中也是一个不可缺少的部分,由于面积所限,我们不得把屏幕上的内容滚来滚去,以显示大量的内容,这就是我们经常要用到的滚动条。但滚动条除去滚动窗口,还有一个很重要的作用――输入,想想你经常用到的一些家用电器上调节声音或别的什么东西的滑块,你把它滑向大的一方音量就会增大,而你把它滑向小的一方音量就会减小,或者一个控制左右两个音箱的均衡器,当滑块在正中央的时候,两个音箱的音量是相同的,当你把滑块偏向一方时,音箱的音量有了大小之分,在Windows操作中,我们也经常要用到类似的效果。

在VB中提供了两个常规的滚动条控件――Vscroll和Hscroll,分别代表垂直的和水平的滚动条,它们只不过是方向不同而已,而它们的属性,以及会发生的事件都是相同的。,滚动条有几个特殊的属性:

Value属性,当滑块挪动后停在某一位置时,就改变了滚动条的Value属性。

Max和Min属性,用来设置滚动条的最大值和最小值,譬如把Max设为100,把Min设为0时,滚动条的Value就在0到100之间移动,当Max和Min倒置时,滚动条的方向也会相反,也就是说,当Max

SmallChange和LargeChange属性,当鼠标在滚动条两头的箭头上单击时,就会把滚动条向相应的方向挪动一点,这时用到的就是SmallChange属性,当你把它设为1时,每点一下,滚动条的Value就改变1;当鼠标在滚动条上点击时,用到的就是LargeChange,当设为10时,每点击一下滚动条,Value就改变10。

下面我们看一个实例。

大家都知道,物体之所以会有颜色是因为物体表面的材料吸收了太阳光中的部分色光,而还有部分色光没被吸收而被反射回来,它就成了我们看到的颜色,黑色就是物体吸收了所有的太阳光的所有色光,没有反射颜色,所以在我们看来是黑的,而当物体反射了所有的色光,我们看到的就是白色。在计算机中,颜色的表示就是象我们刚才描述的样子,它把颜色分为红(R)、绿(G)和蓝(B)。众所周知,计算机的机器语言是使用二进制表示的,为了方便查阅我们看到的往往是十六进制代码,一个字节包括两位十六进制数字,从0-255(十六进制表示0-FF),而一个字节是由八位二进制数值表示(2^8,2的8次方),计算机中用分别用一个字节,也就是八位表示一种颜色,和在一起也就是三个字节(24位)表示所有的颜色,这就是我们平时常说的24位真彩,它一共可以组成256×256×256(2^24)种颜色,对于我们的肉眼,是根本分辨不出来相邻两个不同的颜色的,比如用FFFFFF表示白色,就好象我们刚才说的物体反射了所有的色光,相反的可以用000000表示黑色,它吸收了所有的色光,还可以用FF0000表示红色,在HTML语言中就是这样表示颜色的。

小知识:现在你可以根据你的显卡的显存来计算一下显卡在24位真彩下可以以多大的分辨率显示,计算是这样的,用显存的字节数÷3(24位色)=显示器宽的象素数×显示器高的象素数,宽的象素数:高的象素数=4:3,比如4兆显存,就应该是4×1024×1024÷3=1365×1024。

在下面的小程序中,我们通过三个滚动条分别代表R、G、B,滚动滚动条,将在右边的图片框中显示相应的颜色,并且在下面的文本框中显示颜色的十六进制数值。

现在,新建一个项目文件,在Form1中如图6-12布局控件,各控件属性如下表:

HsrollBar Name Hscroll1

Index 0、

1、2

(共同属性)

Max 255

Min 0

LargeChange 10

SmallChange 1

Label Name Label1

Index 0、

1、2

Index 0 Caption “红:”

Index 1 Caption “绿:”

Index 2 Caption “蓝:”

Label Name Label2

Caption “颜色值”

TextBox Name Text1

Text “”

PictureBox Name Picuture1

为了把十进制数值换成十六进制数值,要使用一个叫做Hex()的函数,它把十进制数值转化为十六进制的字符,但对于只有一位的十六进制字符,这个函数并不在高位补零,为了视觉上的正确,我设计了一个小函数帮助它给一位的十六进制字符补零.

程序代码很简单,见下:

Dim RedStr, GreenStr, BlueStr As String’RGB的字符

Dim RedNum, GreenNum, BlueNum As Integer’RGB的数值

Function GetColorValue() As String

‘获得输入值 RedNum = HScroll1(0).Value GreenNum = HScroll1(1).Value BlueNum = HScroll1(2).Value

RedStr = Hex(RedNum) If Len(RedStr)

GreenStr = Hex(GreenNum) If Len(GreenStr)

BlueStr = Hex(BlueNum) If Len(BlueStr)

GetColorValue = RedStr + GreenStr + BlueStr’合并

End Function

Private Sub Form_Load()

‘初始化程序

Text1.Text = GetColorValue Picture1.BackColor = RGB(RedNum, GreenNum, BlueNum)\'RGB函数返回颜色值

End Sub

Private Sub HScroll1_Change(Index As Integer)

‘当滚动条被改变时

Text1.Text = GetColorValue Picture1.BackColor = RGB(RedNum, GreenNum, BlueNum)

End Sub

运行如图6-13。

列表框(ListBox)和复合列表框(ComboBox)也是我们经常见到的视窗元素,我们从它所列示的条目中选出所需的,两种列表框只是在外观上略有不同,但从本质和操作方法来说它们是很相象的,它们也有一些特殊的属性:

List属性,你可以利于该属性象列表框或复合列表框中添加条目,但也可以在程序设计中通过AddItem方法添加。

推荐第8篇:VB学习的心得体会

VB学习的心得体会

————刘师桐

这学期选修了VB这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。

VB全称为Visual Basic,是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。VB提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且VB提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以VB学起来简单,用起来方便。因此,我学了vb,并有了如下收获:

1.富业余生活。业余时间到处游手好闲的身影不见了,没事我肯定一动不动的坐在电脑面前摆弄VB。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在生活有了寄托,是VB给了我无穷的快乐,让我乐此不疲。

2、多了一门技术。VB是一门计算机编程语言,也算是一项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 多看多练是我独门绝技,一般人我不告诉他:多看------别人的代码,即使看不懂也没关系,可以把这些代码输入到机子里运行,然后根据运行结果去体会程 序的思路和用途。

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。越是这样越不要灰心,应该放松心态,一点一滴的去查。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

通过这个学期的学习,对了VB这种高级语言有了初步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,包括教材上的例题程序,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的VB课程让我收获了很多,我对下学期的计算机2级考试很有信心!!!

推荐第9篇:vb

输入的数字与事先设置的数字相同,则提示“输入正确” 否则显示“错了” , 。  代码编写: 代码

Private Sub Command1_Click() x = Val(InputBox("输入一个 1~10 之间的整数")) If x = Text1 Then MsgBox "输入正确" Else MsgBox "错了" End If End Sub 遇到的主要问题及分析:

【提高题 1】修改上面程序,当输入的值比设置的数字小,显示“错了,你猜得小了。 ; ” 21 输入的值比设置的大,则显示“错了,你输入的太大了。 请直接在上题修改) ” ( 【提示】本实验属于多分支结构。

Private Sub Command1_Click() x = Val(InputBox("输入一个 1~10 之间的整数")) If x = Text1 Then MsgBox "输入正确" ElseIf x

Private Sub Command1_Click() Dim a!, b!, c! a = Val(InputBox("输入第 1 条边长")) b = Val(InputBox("输入第 2 条边长")) c = Val(InputBox("输入第 3 条边长")) If a + b >c And b + c >a And a + c >b Then Print "此三边可构成三角形" Else Print "此三边不可构成三角形" End If End Sub 遇到的主要问题及分析:

【选作题】课堂示例“字符串替换” 使用多个函数完成时,如果源字符串中没有要查找 , 的子串,程序就会出错。修改程序当没有要查找的子串时,弹出“没有找到的”提示框,并 将源串放到结果文本框中。

22 【提示】InStr(C1,C2) 在 C1 中查找 C2 是否存在,若找不到,结果为 0。  代码编写: 代码

Private Sub Command1_Click() i = InStr(Text1, Text2) If i = 0 Then MsgBox "没有找到" Label5 = Text1 Else k = i + Len(Text2) Ls = Left(Text1, iSqr(d)) / (2 * a) ElseIf d = 0 Then x1 = -b / (2 * a) x2 = x1 Else MsgBox "无实根" End If Pri nt "x1="; x1, "x2="; x2 End Sub

2、输入一个字符,判断该字符是字母、数字还是其他字符,并作相应的显示。【要求】分别使用两种语句 If ……ElseIf……和 Select Case 来完成。 24 代码 If ……ElseIf 语句实现

Private Sub Command2_Click() a = InputBox("输入一个字符") If a >= "a" And a = "A" And a = "0" And a

思考: 编写一个对文本框中输入的字符进行转换的 程序。 窗体如上右图所示。 将小写字母转换成大写字母, 大写字母转换成小写字母,空格不转换,其余字符转换 成”*”。要求每输入一个字符马上 进行判断和转换,结果

显示在 Text2 中。  代码编写: 代码

Private Sub Text1_Change() a = Right(Text1, 1) Select Case a Case "a" To "z" Text2 = Text2 + UCase(a) Case "A" To "Z" Text2 = Text2 + LCase(a) Case " " Text2 = Text2 + " " Case Else 25 遇到的主要问题及分析:

Text2 = Text2 + "*" End Select End Sub

3、输入一个数字(1-7) ,用英文显示对应的星期一至星期日。 【提示】用 Select Case 语句来实现  代码编写: 代码 Private Sub Command1_Click() a = Val(InputBox("输入星期几")) Select Case a Case 1 MsgBox "Monday" Case 2 MsgBox "Tuesday" Case 3 MsgBox "Wednesday" Case 4 MsgBox "Thursday" Case 5 MsgBox "Friday" Case 6 MsgBox "Saturday" Case 7 MsgBox "Sunday" Case Else MsgBox "输入错误" End Select End Sub 遇到的主要问题及分析:

4、编程实现简单计算器功能。要求程 序运行后,分别输入两个操作数以及运算 符(+、-、*、/)后,单击“计算”按钮, 则自动计算出表达式的结果,并显示在运 算结果对应的文本框中。 【提示】除数为 0 时要做适当处理。  代码编写:

26 代码

Private Sub Command1_Click() Select Case Text2 Case "+" Text4 = Text1 + Text3 Case "-" Text4 = Text1i + 1, 1); Next i End Sub 遇到的主要问题及分析:

2、完善程序,输入一个数,判断该数是否为完数,并把其因 子输出,如图所示。 (一个数如果恰好等于它的因子之和,这个数 就被称为“完数” 一个数的因子是指除了该数本身以外能够被其整 。 除的数。 )例如 6 是一个完数,因为 6=1+2+3。

Private Sub Command1_Click() m = Val(Text1.Text) For i = 1 To m1 【4】 If m Mod i = 0 Then Picture1.Print "+"; i; Next i Else Picture1.Print m & "不是完数" End If End Sub 【5】 Picture1.Print 【3】 【4】 【5】

3、编写程序,实现求解把 50 元钱分成一元、二元和五元的纸币且纸币张数共为 20 张的分法有多少种? 代码

Private Sub Form_Click() Print "5 元" "2 元" "1 元" n=0 For x = 0 To 10 For y = 0 To 25 z = 20y If 5 * x + 2 * y + z = 50 And z >= 0 Then Print x, y, z: n = n + 1 Next y Next x Print "分法有" & n & "种" End Sub 遇到的主要问题及分析:

4、参考下图的算法,编写程序,输入两个正整数,求这两个数的最小公倍数。代码

遇到的主要问题及分析: 课本 p87 页 37 【提高题 1】输出斐波那契级数

1、

1、

2、

3、

5、

8、13……,当某项的数值大于或等 于 30000 时结束。此级数项的规律是:前两项的值各为 1,从第 3 项起,每一项是前 2 项 的和。 (要求一行输出 6 项) 。 代码

Private Sub Form_Click() a=1 b=1 Print a; b; i=2 Do While c

【提高题 2】P269 实验 D

二、5 编写程序,求 Sn=a+aa+aaa+…(n 个 a)的值,其中 n 是表示 a 的个数, 是 a 【1, 之间的随机正整数。 9】 例如: a=2,n=5 时, 当 sn=2+22+222+2222+22222 【提示】为得到不断重复的数 t,可在循环体利用通项: t = t * 10 + a 代码 Private Sub Form_Click() a = Int(Rnd * 9) + 1 n = Int(Rnd * 6) + 5 s=0 t=0 For i = 1 To n t = t * 10 + a s=s+t 遇到的主要问题及分析: „[1,9] „[5,10] 38 Print t; Next i Print s End Sub 【选作题 1】完善程序,使之能在窗体上显示有规律的 图形。

Private Sub Form_Click() Dim i% For i = 1 To Print Next i End Sub 【提示】使用 Tab 函数定打印位置,可使用的函数还有:String, Right,CStr 1)循环体内显示用 String 函数来实现,找出循环控制变量与 Sting 函数内个数的关系,即 String(j, Cstr(i) 。 2) 为了使最后一行的 0 显示, 若按照上面的通式, 则最后一行显示的是 1, 则要对公式进行修改, String 即 (j, Right (cstr(i)) )。 【1】

0 【2】 Tab(201, Trim(Right(Str(i), 1))) 【选作题 2】 用两重循环在窗体上显示如右图结果。

【提示】两种方法解该题: 方法一:利用数值实现,就是将各列列号通过运算连接起来。 方法二:利用 Mid 函数取字符串子串来实现,即从字符串中不断取所需的 子字符串而得。 还要注意行号与负号的关系。

代码

Private Sub Form_Click() s = "123456" For i = 1 To 6 For j = 1 To i If i Mod 2 = 1 Then Picture1.Print " " & Left(s, j) & " Else Picture1.Print "-" & Left(s, j) & " End If Next j Picture1.Print Next i End Sub 遇到的主要问题及分析: "; "; 39 实验心得体会 成绩:

教师签名: 实验日期 年 月 日 实验八 实验目的: 常用控件

1.掌握单选按钮、复选框的重要属性、事件和方法。 2.掌握框架的使用。 3.掌握列表框、组合框的重要属性、事件和方法。

实验内容

1、窗体上有两个复选框,名称分别为 Chk1 和 Chk2,标题分别

为“能被 5 整除”和“能被 6 整除” 一个命令按钮 Command1,以及一 , 个文本框 Text1。编写适当的事件过程,使得程序运行时对复选框 进行选择,单击命令按钮,可根据下表的规定,计算 100~200 之间符合要求的整数之和, 把结果显示在 Text1 中。

选择 Chk1 Chk2 Chk1 和 Chk2 都不选择 要求 只能被 5 整除 只能被 6 整除 既能被 5 整除,也能被 6 整除 只能被 1 整除

 代码编写: 代码 遇到的主要问题及分析: 40 Dim s1, s2 Private Sub Check1_Click() s1 = 0 For i = 100 To 200 If i Mod 5 = 0 Then s1 = s1 + i Next i End Sub Private Sub Check2_Click() s2 = 0 For i = 100 To 200 If i Mod 6 = 0 Then s2 = s2 + i Next i End Sub „定义全局变量 „每次选择前先清 0 „每次选择前先清 0 Private Sub Command1_Click() Text1 = 0 „每次赋值前先清 0 If Check1.Value = 1 And Check2.Value = 1 Then Text1 = s1 + s2 ElseIf Check1.Value = 1 Then Text1 = s1 ElseIf Check2.Value = 1 Then Text1 = s2 Else For i = 100 To 200 Text1 = Text1 + i Next i End If End Sub

2、窗体上包含有两个名称分别为 Op1 和 Op2 的单选按钮,

标题分别为“100-200 的素数和” 和“200-400 的素数和” 还有 。 一个文本框和一个命令按钮,标题为“求和” 程序运行后,选中 。 某个单选按钮,并单击“求和”按钮,则计算指明范围内的素数之和,并显示在文本框中。  代码编写: 代码

Private Sub Command1_Click() If Option1 Then For m = 100 To 200 Tag = True 41 遇到的主要问题及分析:

For i = 2 To m1 If m Mod i = 0 Then Tag = False Next i If Tag Then s = s + m Next m End If Text1 = s End Sub

3、P237,实验 E-6,窗体的标题栏显示“选课界面”,窗体

上有 两个列表框,左边是 List1,右边是 List2,其中 List2 中的列表 项按字母顺序升序显示。 窗体下方有一个文本框, 名为 Text1。 请你: 1) 写出程序中需要的属性设置。 2)程序运行后,在列表框 List1 中添加“Visual Basic 程序” “数据结构” “操作系 、、统 ” “硬 件技术 基础 ” “计 算机 网络” “ 多媒 体技 术 ”和 “ C++程 序设计 ” 七个选 项。 、、、(使用 Form_Load()事件) 。

3)要求单击 List1 中的某一项时,该项显示在 Text1 中。 4)双击 List1 中的某一项时,该项从 List1 中删除,添加至 List2。当 List2 中 的内容已满 5 门时,不允许再添加并提示“超过 5 门课程,不能再选了!(要注意条件的放 。 ” 置位置问题)  需要的属性设置

表 9.1 实验 1 属性设置 对象名称 属性 属性值 42 List2 Sorted True  代码编写: 代码 Private Sub Form_Load() List1.AddItem "Visual Basic 程序" List1.AddItem "数据结构" List1.AddItem "操作系统" List1.AddItem "硬件技术基础" List1.AddItem "计算机网络" List1.AddItem "多媒体技术" List1.AddItem "C++程序设计" 遇到的主要问题及分析:

End Sub „单击列表框 List1 Private Sub List1_Click() Text1 = List1.Text End Sub „双击列表框 List2 Private Sub List1_DblClick() If List2.ListCount = 5 Then MsgBox "超过 5 门课程,不能再选" Else List2.AddItem List1.Text List1.RemoveItem List1.ListIndex End If End Sub

4、窗体上有一个名为 List1 的列表框(允许做多项 选择) ,一个名称为 Text1 的文本框,三个命令按钮,标 题分别为“求全部项目和” “求选定项目之和” “删除选定项 , , 目” 。

【要求】

1)程序运行后,将把 1~100 之间能够被 7 整除的数添加到列表框中。 2)单击“求全部项目和”按钮,则对 List1 中的数进行累加求和,并在文本框中显示 计算结果。

43 3) 单击“求选定项目之和”按钮,则对 List1 中的选中的项目进行累加求和,并在文 本框中显示计算结果。 4) 单击“删除选定项目”按钮,则删除 List1 中的选中的项目。 代码

Private Sub Form_Load() „显示 7 的倍数 For i=1 To 100 If i Mod 7 =0 Then 【1】 End If Next i End Sub List1.AddItem i 遇到的主要问题及分析: 如果列表框要多选, multiselect 属性设置为 1 „列表框所有项目之和 Private Sub Command1_Click() Sum% = 0 For i = 0 To Sum = Sum + Next i 【4】 text1=sum End Sub „列表框选定项目之和 Private Sub Command2_Click() Sum% = 0 For i = 0 To 【6】 List1.ListCount1 Text3.SelLength = Len(Text1.Text) Text3.seltext = Text2.Text Then '不需要多次替换则退出 If option1=true Exit Do End If k = a + m End If Loop End Sub until a=0 '为继续查找确定起始点 '找不到退出

【选作题】设计一个运行界面如下图所示的程序。在“主菜”组合框中选择一种食品(不可 输入) ,单击“添加主菜”按钮即可将该项内容添加到右边的列表框;在“饮料”组合框中选择 或输入一种饮料,单击“添加饮料”按钮即可将该项内容添加到右边的列表框。在右边的列 表框中选择某项并单击“不要这个

46 【要求】右边所点的菜单中不允许出现重复的菜。 【提示】添加的时候要先判断是否菜单中是否已经有了。  代码编写: 代码

Private Sub Command1_Click() f = True For i = 0 To List1.ListCount – 1 „菜单中不允许出现重复的菜 If List1.List(i) = Combo1.Text Then f = False Next i If f = True Then List1.AddItem Combo1.Text Text1 = "你点了" & List1.ListCount & "种食物" End Sub Private Sub Command2_Click() List1.AddItem Combo2.Text „饮料可以重复 Text1 = "你点了" & List1.ListCount & "种食物" End Sub Private Sub Command3_Click() List1.RemoveItem List1.ListInd ex Text1 = "你点了" & List1.ListCount & "种食物" End Sub Private Sub Command4_Click() List1.Clear Text1 = "你点了" & List1.ListCount & "种食物" End Sub Private Sub Form_Load() Combo1.AddItem "。。。。" Combo2.AddItem "。。。。" End Sub 遇到的主要问题及分析: Style=2 组合框, 不是列表框 47

实验心得体会 成绩: 教师签名: 48 实验日期 年 月 日 实验九 实验目的: 常用控件(续)

1、掌握图片框、图像框、计时器的属性和方法和事件及使用。

2、掌握滚动条的重要属性、事件和方法。

3、了解图片框和图像框的区别。掌握形状控件的重要属性以及使用。 实验内容

1、窗体上有一组合框 Combo1,一文本框 Text1,三个 命令按钮,要求: 1)程序一开始运行时,Combo1 中有若干选项,命令 按钮"确定"不可用 2) 选中 Combo 中某个项目, 单击"修改", 则将该项目复制到 Text1 中 (可在 Text1 中修改) ,同时"确定"按钮可用 3) 单击"确定"将修改过的 Text1 替换组合框中原有的内容, 同时"确定"按钮不可用.4)单击"添加",将 Text1 中的内容添加到组合框中

【提示】修改组合框中选中的内容要通过代码来重新设置 Combo1.List(Combo1.ListIndex)值 的,而不能直接设置 Text 属性值。  代码编写: 代码 遇到的主要问题及分析: 49

2、在窗体的 Label 中每隔 2 秒显示“你好中国” 即每隔 2 秒显示一次标签) ( 。 【提示】 1)设置时钟控件的 Interval 值使程序每隔 2 秒,调用一次计时器的 Timer 事件。 2)将标签的状态设置成:显示……隐藏……显示……隐藏……  代码编写: 代码 遇到的主要问题及分析:

3、窗体上有一图片框,名为 P1。单击图片框,则在图片框上显示“单击图片框” 单击 。 窗体,则在窗体上显示“单击窗体” 要求不能用变量,每个事件只允许写一句代码。 。  代码编写: 单击图片框 单击图片框

4、如右图所示,将滚动条的范围设置为 0~1000,在文 本框中输入一个数后按下“移动”按钮。 如果文本框中是正数则 滚动条向右移动相应刻度,但若超过最大刻度则 MsgBox 提 示“输入值太大” 如果文本框中是负数则滚动条向左移, ; 超过最小刻度则不再动, MsgBox 并 提示。 【提示】假定滚动条当前位置的 Value 值为 200,在文本框输入 300,单击“移动”按 钮,则滚动条的值应变为 500;再输入-800,再单击“移动”按钮,则滚动条的值应变为 0,并用 MsgBox 提示“已移动到最左边”.50

 代码编写: 代码 遇到的主要问题及分析:

5 、窗 体 上 添 加 一 Shape 形 状 控 件 , 名 为 “ Shape1 ”, 两 个 名 称 分 别 为 Command1,Command2 的命令按钮, 标题分别为“圆”和“红色边框”

编写代码, 。 程序运行时, 单击“圆”按钮则 Shape 控件显示一个圆。单击“红色边框”按钮,则将 Shape 控件的边框颜 色设为红色。 【提示】分别设置 Shape 控件的 Shape 属性和 BorderColor 属性  代码编写: 单击“圆”按钮 单击“红色边框”按钮

6、如右图所示,编写程序,使窗体中的两个汽车图形 能够相向运动直至相撞。此时屏幕弹出一个消息窗口显示 “某年某月某日发生交通意外” 显示日期为当前系统日期。 。 【提示】根据两车的位置来判断是否相撞。  代码编写: 代码

遇到的主要问题及分析: 51 【选作题 1】窗体有一个矩形和一个圆,还有一水平滚动条和一垂直滚动条。程序运行时,移动某个 滚动条的滑块,可使圆作相应方向的移动。滚动条 刻度值的范围是圆可以在矩形中移动的范围。 (如 右图所示) 。 【提示】水平滚动条和垂直滚动条的 Min 和 Max 属性值与矩形的位置及大小有关,最好 通过代码在 Form_Load 事件中设置。  代码编写: 代码

遇到的主要问题及分析:

【选作题 1】模拟 Windows 屏幕保护程序(如下图所示)。 可按下面提示分步实现(也可以以你的聪明才 智,一步到位) :   文字从右往左运动,完全移出屏幕时同从屏幕最右边 重新出现并继续左移。 文字能像弹球一样,碰到窗体边缘时能反弹。 每次碰到窗体边缘反弹时字体的颜色和大小随机变化。

【提示】移动控件的位置有两种方法(其中 w 和 h 分别表示水平方向或垂直方向移动的距 离):

Label1.Left=Label1.Left + h Label1.Top=Label1.Top + v Label1.Move Label1.Left + h Label1.Move Label1.Left, Label1.Top + v 52 重要提示:如果水平方向移动的距离为 h,则当控件碰到窗体的边缘时,控件应该向 相反的方向移动,即 h=-h,垂直方向也一样。  代码编写: 代码

遇到的主要问题及分析: 实验心得体会 成绩: 教师签名: 53 实验日期 年 月 日 实验十 实验目的: 数组

1、掌握数组的声明、数组元素的引用。

2、掌握静态数组和动态数组的使用差别。

3、掌握数组的基本操作。应用数组解决与数组有关的常用算法。

实验内容:

1、随机产生 10 个 200 到 300 的整数,求最大值及其下标、最小值及其下标、平均值, 并显示数组的所有元素值(按每行输出 5 个元素)以及最大值及其下标、最小值及其其下 标和平均值。  代码编写: 代码

Private Sub Form_Click() Dim a(1 To 10) As Integer t=0 For i = 1 To 10 a(i) = Int(Rnd * 101 + 200) Print a(i); If i Mod 5 = 0 Then Print t = t + a(i) Next i Print "平均值为:"; t / 10 Max = a(1): imax = 1 Min = a(1): imin = 1 For i = 2 To 10 If a(i) >Max Then Max = a(i): imax = i If a(i)

For i = 1 To 5 x = a(i) a(i) = a(i + 5) a(i + 5) = x Next i For i = 1 To 10 Print a(i); If i Mod 5 = 0 Then Print Next i 遇到的主要问题及分析:

2)如果要求这 10 个数字不重复呢?。 (提示:要产生不重复的整数,则需要每产生一个整数,就 在数组中查找新产生的数据是否已经存在数组中了,若有,则重新产生;若没有,则将产生的整数放入 数组中,下标加 1) 遇到的主要问题及分析: 代码 Private Sub Form_Click() Dim a(1 To 10) As Integer a(1) = Int(Rnd * 101 + 200) Print a(1); For i = 2 To 10 t = Int(Rnd * 101 + 200) For k = 1 To i1 If t

代码

Private Sub Form_Click() Dim a(1 To 10) As Integer a(1) = Int(Rnd * (9065 + 1) + 65) For k = 1 To i65 + 1) + 65) k=0 End If Next k a(i) = t Print Chr(a(i)), If i Mod 5 = 0 Then Print Next i End Sub 遇到的主要问题及分析: 不重复的方法同 2),随机 数范围[65,90]

2、分类统计输入一串字符,统计各字母出现的次数,不区分字母大小写。

【提示】 (1)统计 26 个字母出现的个数,必须声明一个具有 26 个元素的数组,每个元素的下标表示相应 的字母,元素的值表示对应字母出现的次数。 (2)从输入的字符串中逐一取出字符,转换成大写字符(使得大小写不区分) ,进行判断。

 代码编写: 代码

遇到的主要问题及分析: 课本 121 页例 5.14 56 【进一步思考】 输入 20 个百分制成绩, 统计并输出各分数段人数, 0~

59、60~6

9、70~7

9、即 80~8

9、90~100。

代码

Private Sub Command1_Click() Dim cj( 1 To 20) As Integer, a(5 To 9) As Integer For i = 1 To 20 cj(i) = Val(InputBox("请输入成绩")) Select Case cj(i) \ 10 Case 0, 1, 2, 3, 4, 5 a(5) = a(5) + 1 Case 6 a(6) = a(6) + 1 Case 7 a(7) = a(7) + 1 Case 8 a(8) = a(8) + 1 Case 9, 10 a(9) = a(9) + 1 End Select Next i For i = 5 To 9 Print a(i), Next i End Sub 遇到的主要问题及分析:

3、编写程序,输出斐波那契级数

1、

1、

2、

3、

5、8……的前 30 项,要求每行输出 5 个。 (用数组来实现)

【提示】 斐波那契数列的特点是:第

一、第二都是 1,从第三项开始,前面相邻两项之和,构成了后一项。 即 : a(n)=a(n-1)+a(n-2)。

代码 Private Sub Command1_Click() Dim a(30) As Long a(1) = 1 a(2) = 1 For i = 3 To 30 a(i) = a(i1) Next i For i = 1 To 30 Print a(i); If i Mod 5 = 0 Then Print 遇到的主要问题及分析: 整型数会溢出 57 Next i End Sub 【进一步思考】输出斐波那契级数

1、

1、

2、

3、

5、

8、13……,当某项的数值大于或等于 30000 时结束。

代码

Private Sub Command1_Click() a=1 b=1 Print a; b; t=2 Do Until c >= 30000 c=a+b Print c; t=t+1 If t Mod 5 = 0 Then Print a=b b=c Loop End Sub 遇到的主要问题及分析:

【选做题 1】 将二维数组 A 中的 100 个元素分别赋给一维数组 B 的每个元素并打印出 来,要求把 A(1,1)到 A(1,10)依次赋给 B( 1)到 B(10),把 A( 2,1)到 A( 2, 10)依次赋给 B( 11)到 B( 20),……,把 A(10,1)到 A( 10, 10)依次赋给 B(91) 到 B(100)。  代码编写: 代码

Private Sub Command1_Click() Dim a(1 To 10, 1 To 10) As Integer Dim b(1 To 100) As Integer For i = 1 To 10 For j = 1 To 10 b((i1, j1, j) End If Next j Next i For i = 0 To 6 For j = 0 To i Picture1.Print Tab(j * 5); a(i, j); Next j Picture1.Print Next i End Sub 【提高题 1】编写一学生成绩统计程序,用户先输

入学生的人数及科目数, 再输入各位学生的各科课程的考 试成绩, 要求该程序可以计算各个学生的平均成绩及每门 课程的平均成绩。程序保存时

程序运行结果如图所示。

【提示】本题使用动态的二维数组能够较好完成任务,数组 的行号表示学生,列号表示科目,分别对数组的行或列进行求和 即可进行学生科目成绩的统计

代码

Private Sub Command1_Click() Dim a() As Integer x = Val(Text1.Text) '人数 y = Val(Text2.Text) '科目数 ReDim a(x, y) 遇到的主要问题及分析: 59 For i = 1 To x For j = 1 To y a(i, j) = InputBox("第" & i & "位同学的第" & j & "门成绩") Next j Next i For i = 1 To x s=0 For j = 1 To y s = s + a(i, j) Next j Picture1.Print "第"; i; "位同学的平均成绩是"; s / y Next i For i = 1 To y s=0 For j = 1 To x s = s + a(j, i) Next j Picture1.Print "第"; i; "门课的平均成绩是"; s / x Next i End Sub 【提高题 2】矩阵转置。编写程序将 2*3 的矩阵转置,即转换成 3*2 的矩阵。 【提示】使用两个二维数组来完成。  代码编写: 代码

Private Sub Command1_Click() Dim a(2, 3) As Integer, b(3, 2) As Integer For i = 1 To 2 For j = 1 To 3 a(i, j) = InputBox("") Print a(i, j); Next j Print Next i For i = 1 To 2 For j = 1 To 3 b(j, i) = a(i, j) Next j Next i For i = 1 To 3 For j = 1 To 2 Print b(i, j); Next j 60 遇到的主要问题及分析: Print Next i End Sub 实验心得体会 成绩: 教师签名: 61 实验日期 年 月 日 实验十一 实验目的: 数组(续)

1、掌握静态数组和动态数组的使用差别。

2、应用数组解决与数组有关的常用算法。

3、掌握控件数组的使用。

实验内容

1、分别用选择排序法和冒泡排序法实现有 N 个元素数组的排序。N 由键盘输入,数 组元素的值在 1~200 之间,随机产生。  代码编写: 遇到的主要问题及分析: 代码 Dim x( ) as Integer n=val(inputbox(””)) Redim x(n-1) For i=0 to n-1 x(i)=int(rnd*200+1) Next i 选择排序法

参看书 106 页 冒泡排序法 参看书 107 页 62

2、利用 Array 函数给数组 a 赋值(数组元素的个数及每个元素的值自己设定) ,从键 盘上输入一个数据,在数组中进行查找,如果数组中有,则删除数组中的这个元素,如果 没有则提示“没有这个数” 。 代码

遇到的主要问题及分析:

【思考】如果将数组元素读入列表框再做插入或删除其中一个元素,应该怎样编程?

3、输入一系列字符串,按递减次序排列。程序的运行界面如图 11.1 所示。 图形框

图 11.1 实验 3 窗体界面

【提示】 (1)要声明窗体级变量 n(表示放若干个字符串的计数器)及一个字符串数组。 (2)每输入一个字符串,按 Enter 键后将 Text 的内容放到数组中,可用事件: Private Sub Text1_KeyPre(KeyAscii As Integer) If KeyAscii = 13 Then … End If End Sub (3) 单击“排序”按钮,进行排序并显示在图形框中。

 代码编写: 代码

创建数组 遇到的主要问题及分析: 63 排序

【选做题】做一个类似图 11.2 的界面的拨号器。 图 11.2 实验 4 窗体界面 图 11.3 实验 5 窗体界面  代码编写: 代码 遇到的主要问题及分析: 64 【提高题】做一个类似图 11.3 界面的简单计算器,并实现对应的功能。  代码编写: 代码 遇到的主要问题及分析: 实验心得体会 成绩: 教师签名: 65 实验日期 年 月 日 实验十二 实验目的: 顺序文件

1、掌握顺序文件、随机文件和二进制文件的特点和使用。

2、掌握顺序文件的打开、关闭和读写操作。

3、学会顺序文件在应用程序的使用

实验内容:

1、初始窗体上有四个命令按钮两个文本框(如图 11.1 所示) 。要求: 1)建立文件名为“t1.txt”的顺序文件,内容来自文本框 Text1。要求:每按一次回车 键则将文本框 Text1 的内容写入文件,并清除文本框 Text1 的内容,直到文本框 Text1 内输入“END”字符串(不区分大小写),关闭文件。 2) “复制文件” 单击 按钮, “t1.txt” 则把 的顺序文件的内容全部复制到新文件 “t2.txt” 中,并给出相应提示。 (只能使用一个变量,不能使用控件。(如图 12.1) ) 3)单击“合并文件”按钮,则将“t2.txt”内容合并“t1.txt”末尾,给出相应提示。 4)单击“显示”按钮,则把“t1.txt”的内容读出来显示在 Text2 中。

图 12.1 实验 1 窗体各个运行状态界面 66  代码编写: 代码 建立文件

遇到的主要问题及分析: 复制文件 合并文件 显示文件内容

2、完善程序,实现:

1) 按下“读入并计数”按钮,将磁盘中的文件 in.txt 的内容读入显示在文本框中, 并分别统计其中字母、数字和其他符号的数量,将结果显示在 Picture1 中。

67 图 12.2 实验 2 窗体各个运行状态界面及 out 文件内容格式

2) 按下“写入文件”按钮,则将统计结果写入文件 out.txt 中,并给出提示“已写 入文件” 。 Dim sz%, %, sq% Private Sub Command1_Click() Dim c$ Open c = 【1】 '准备读入 '每次读入一个字符 '将读入的字符显示在 Text1 中 '字母 '数字 '读出的是回车或换行符则不计数 '其他符号 【2】 '打开 in.txt 文件 '读入并计数

Do While Not EOF(1) Text1.Text = Text1.Text & c Select Case c Case Case 【3】 【4】 sz = sz + 1 = + 1 Case Chr(10), Chr(13) Case Else sq = sq + 1 End Select Loop 【5】 【6】 Picture1.Print "其他";sq; "个" Close #1 End Sub Private Sub Command2_Click() '将结果显示在 Picture1 中

'结果写入文件 '将结果写入 out.txt 中

Open App.Path + "\out.txt" For Output As #1 【7】 【8】 Print #1,"其他";sq; "个" MsgBox "已写入文件" 【9】 End Sub

3、建立如下图所示包括五个命令按钮、图片框、列表框及标签的程序界面。编程实现 下 列功能: 68 List 列表框 Label 标签 Picture 图片框

1)单击“新建”按钮,弹出 Inputbox 用于输入数组的元素个数 N;随机产生任意 N 个[10,100]的随机整数存入数组 A;并把数组 A 的各元素值显示在图片框中(每行 5 个元素) ;同时写入磁盘文件 MyList.dat(与工程文件和窗体文件位于同一文件夹) 。 2)单击“读取” 按钮,将文件 MyList.dat 的数据读出,存入数组 B,同时添加 到列表框中。 3) 单击“计算” 按钮,计算并在标签上输出数组 B 的最大值、最小值和平均值。 4)单击“添加” 按钮,将最大值、最小值和平均值。追加到“MyList.dat”的 末尾并弹出“已写入文件! ”的提示。 5)单击“退出”按钮,则退出应用程序。  代码编写: 代码

新建

遇到的主要问题及分析: 读取文件 69 计算 添加 退出

【选做题】建立一个多用户的密码登录程序,如下图所示。要求:

1)输入用户名及密码,单击“登录”按钮,则判断该用户名是否存在,如果存在,则进一 步判断密码是否正确。分别给出相应提示信息。 2)输入用户名及密码,单击“注册”按钮,则先判断该用户名是否已有人注册了,如无, 则把用户名和密码添加到文件中;如有人注册,则提示"该用户名已存在,请重新输入!" 3)单击“退出”按钮,则退出应用程序

原始窗体

用户名及密码均正确时提示 用户名正确,密码错误 用户名错误 70  代码编写: 代码 登录 遇到的主要问题及分析: 注册

实验心得体会 成绩: 教师签名: 71 实验日期 年 月 日 实验十三 实验目的:

1、理解自定义函数过程的定义和调用方法;

2、掌握自定义子过程的定义和调用方法;

3、掌握子过程与函数过程的使用差别;

过程 实验内容

1、编写一函数过程 Prime(n),对于已知正整数 n,判断该数是否为素数,函数的返回值 类型为布尔型。 代码

Private Sub Command1_Click() Dim n% Dim z As Boolean n = Val(Text1.Text) z = prime(n) If z Then Print "是素数" Else Print "不是素数" End If End Sub Function prime(n%) As Boolean prime = True For i = 2 To n1 If (n Mod i) = 0 Then prime = False Next i End Function 2) 窗体上包含有两个名称分别为 Op1 和 Op2 的单选按 钮,标题分别为“100-200 的素数和” 和“200-400 的素数 和” 。还有一个文本框和两个命令按钮,标题分别为“求和”和 “写入” 。程序运行后,选中某个单选按钮,并单击“求和”按 钮,则计算指明范围内的素数之和,并显示在文本框中。单击“写入” ,则把结果存入 Out.txt 中。 (要求素数判断必须函数来实现) 。 代码

Dim s As Integer Dim m% s = 0 If Option1 Then For m = 100 To 200 Tag = prime(m) If Tag Then s = s + m Next m End If If Option2 Then For m = 200 To 400 Tag = prime(m) If Tag Then s = s + m Next m End If Text1 = s „全局变量 „主过程,求素数和 Private Sub Command1_Click() 遇到的主要问题及分析: 73 End Sub „主过程,结果写入文件

Private Sub Command2_Click() Write #1, s Close #1 End Sub Open "d:\Out.txt" For Append As #1 Function prime(n%) As Boolean prime = True For i = 2 To n1) End If End Function „函数过程 Fac(n) 遇到的主要问题及分析:

1) 利用 Fac(n)函数, 编写程序分别输入两个正整数 X 和 Y, 计算并输出 x!+(x+1)! +(x+2)! + …… +(x+y)!之和。 代码

Private Sub Command1_Click() Dim x%, y%, i% x = Val(Text1.Text) y = Val(Text2.Text) „主过程,计算求和

遇到的主要问题及分析: 74 For i = x To y z = fac(i) s = s + z Next i Print s End Sub Function fac(n%) As Integer If n = 1 Then fac = 1 Else fac = n * fac(nm)) Print z End Sub Function fac(n%) As Integer If n = 1 Then fac = 1 Else fac = n * fac(n1) s1 = ls + Mid(s1, k) i = InStr(s1, s2) Loop 实验心得体会 成绩: 教师签名: 77 实验日期 年 月 日 实验十四 实验目的: 过程(续)

1、掌握自定义子过程以及函数过程的定义和调用方法;

2、掌握形参和实参对应关系;值传递和地址传递的传递方式以及区别。

3、掌握多窗体调用。

实验内容

1、编写一函数过程 FunMax( a( ) ),求一维数组 a 中的最大值。主调程序随机产 生 10 个-100 到 100 之间的整数,调用 FunMax 函数过程,显示数组的最大值。 代码

Function „FunMax( a( ) ) 遇到的主要问题及分析:

End Function Private Sub Command1_Click() „主程序,显示数组的最大值 End Sub 78

2、编写一子过程 ProcMin,求一维数组 a 中的最小值,子过程的形参自己确定。主 调程序随机产生 10 个 100 到 200 之间的整数,调用 ProcMin 子过程,显示数组的最小 值。 代码

Sub „子过程 ProcMin 遇到的主要问题及分析:

End Sub Private Sub Command1_Click() „主程序,显示数组的最小值 End Sub

3、运行下面程序段,体会过程调用过程中传值和传址的区别。

Private Sub test(ByVal p%, ByVal m%, n()) p = p + 1: m = m + 1 n(1) = 999 Print "Sub:"; p; m; n(1) End Sub Private Sub Command1_Click() Dim c() a% = 1: b% = 2 c = Array(1, 2, 3) Call test(a, b + 3, c) Print "Main:"; a; b; c(1) End Sub 运行的结果:

运行的结果: 分析原因:

 运行程序,分析结果。

 将 Private Sub test(ByVal p%, ByVal m%, n()) 分析原因: 79 改为 Private Sub test(p%, m%, n())再运行并分析

根据运行结果回答下面问题: 1) 为什么两种调用方式,a 的输出的结果会发生变化,而 b 却不变?

2) 可以将 Private Sub test(ByVal p%, ByVal m%, n())改为 Private Sub test(ByVal p%, ByVal m%, ByVal n())吗?为什么?

【选作题】从键盘上输入一个整数,则在窗体上显示此整数所有不同的因子及因子个 数。(求因子及因子个数要求用过程完成) 遇到的主要问题及分析: 代码

Sub „子过程 End Sub Private Sub Command1_Click() „主程序 End Sub 【提高题】编写一个包含多个窗体及多个模块的工程: 窗体 1:主窗体,放置按扭,准备调用其他窗体; 窗体 2:输入一个数,显示它是否幸运数;

幸运数:指前两位数字之和等于后两位数字之和的数。 80 窗体 3:输入两个数,显示它们之间的所有幸运数; 窗体 4:输入一个数,显示比它小的最大幸运数;

【提示】  编写判断一个四位数是否幸运数的函数过程 Luck(返回值是逻辑型),放在主窗体中。注意,函数过程是 必须是全局级的 (即在函数定义时加 Public 或者缺省, 但一定不能加 Private) 否则其他窗体不能调用, , 调用时要在函数名前加窗体名,如:Form1.Luck(Text1.text)  先添加几个窗体并分别设置相应的控件及属性,并正确设置启动窗体。程序代码中利用多窗体的语句和方法 将需要的窗体载入内存,不需要的窗体可隐藏或从内存中删去。

代码

Function „判断幸运数函数 Luck 遇到的主要问题及分析:

End Function 窗体 1 Private Sub Command1_Click() End Sub 窗体 2 Private Sub Command1_Click() „判断输入的数是否为幸运数 „显示 Form2 End Sub 81 窗体 3 Private Sub Command1_Click() „两数之间的幸运数 End Sub „比某数小的最大幸运数

窗体 4 Private Sub Command1_Click() End Sub 实验心得体会 成绩: 教师签名: 82 实验日期 年 月 日 实验十五 实验目的: 菜单及通用对话框

1、掌握下拉菜单的规划、设计和使用方法。

2、掌握弹出式菜单的设计和使用方法。

3、掌握各种对话框的使用方法。

实验内容

1、设计菜单(如右图所示),在窗体上放置一个文本框,设置其 Multiline 属性为 True。设计包含有 3 个主菜单项的菜单系统,分别为“文件”“格式”和“查找” 、。其中 “文件”包括 “打开”“保存” 、、“清除”和“退出”四个子菜单。 “清除”与“退出” 之间有一条分隔线。 “格式”包括“字体”和“颜色”两个子菜单。 “查找”包括“查找下 一个”和“替换”两个子菜单。为菜单编写如下 有关代码: 1)新建:新建一个空的文本文档 2)打开:弹出打开对话框,打开文件显示在 文本框中 3)保存:弹出保存对话框,将文件保存到指 定路径中。 4)退出:关闭应用程序 5)字体:弹出字体对话框,设置文本框的字体属性 6)颜色:弹出颜色对话框,设置文本框的字体颜色 7) 查找: 显示如图输入对话框, 输入要查找的内容后, 可在文本框内查找指定的内容。

要求:1) “格式”菜单的显示与否与文本框中有无内容相关联,当文本框中的内容 为空时,隐藏“格式”菜单;当文本框输入内容的时候,显示“

格式”菜单。 3) 可通过鼠标右键弹出“格式”菜单。 83 代码

Sub „新建空的文档 遇到的主要问题及分析: End Sub Sub „打开

End Sub Sub „保存 End Sub Sub „清除 End Sub Sub „退出 End Sub Sub „字体

End Sub Sub „颜色 End Sub 84 Sub „查找下一个 End Sub Sub „替换 End Sub Sub „显示隐藏格式菜单 End Sub Sub „右键弹出格式菜单 End Sub 实验心得体会 成绩: 教师签名: 85 实验日期 年 月 日 实验十六 实验目的: 随机文件(选作)

1、掌握自定义类型的定义及其变量的声明以及变量元素的引用。

2、掌握随机文件的打开、关闭和读写操作。

3、学会随机文件在应用程序的使用。

实验内容

1、窗体上 Form1 上有三个命令按钮,两个图片框,和一个标签(如图 16.1) 。 Picture1 Picture2 图 16.1 实验 1 运行界面 要求: 1)自定义一个 StudType 类型,包括姓名、性别、电话号码和学校四个成员,结构如下: 姓名 (Name) :字符串(长度为 10) 性别(Sex) :字符串(长度为 2) 电话号码(Tel) :字符串(长度为 11) 学校(School) :字符串(长度为 20) 遇到的主要问题及分析: 代码

Type „自定义 StudType 类型 End Type 86 2)程序运行后,单击“文件写入” ,则以随机存取方式打开当前目录下的文件”Stud.txt”,把 记录个数显示在标签 Label1 中;并根据提示向文件添加记录,每写入一个记录后,都要询问是否再 输入新记录,回答”N”或”n”时,则停止输入;重新更新标签中的记录个数。 遇到的主要问题及分析: 代码

Sub „向文件添加记录 End Sub 3)单击“文件读取” ,则以随机存取方式打开当前目录下的文件”Stud.txt”,读取文件中的全 部记录,并在图片框 Picture1 显示出来,并把记录个数显示在标签 Label1 中。 遇到的主要问题及分析: 代码

Sub „读取文件中的全部记录 End Sub 4)单击“指定记录读取” ,则弹出一个输入框,提示输入所要显示的记录号,以随机存取方式打 开当前目录下的文件”Stud.txt”, 读取指定记录号的记录, 并在并在图片框 Picture2 显示出来。 程序运行结果如下图所示。

87 代码

Sub „读取文件中的某条指定记录 遇到的主要问题及分析: End Sub 实验心得体会 成绩: 教师签名: 88 附录:VB 统考编程题(精选)

【特别提醒】 统考中的编程题目通常在某个指定的文件夹下面已经

有现成的但不完整的窗体或部分程序,考生在已有的基础上补充完 成,不需要自己重新做窗体和编程。正确的作法是打开指定文件夹 中的工程文件(.vbp) ,之后按题目要求完成并保存。

一、简单操作题(15 分/题)

1、在名称为 Form1 的

窗体中建立一个名为 HS1 的水平滚动条,其最大值为 200,最小值为 0,使用 属性窗口设置控件属性。程序运行后,每次修改滚动条的位置时都执行语句 Print HS1.value。

图附 1 简单操作 1 运行界面

2、请在窗体上添加三个文本框,名称分别为 Text

1、Text2 和 Text3,要求程序运行的时候,焦点 光标在 Text1 上,按下键盘上的 Tab 键后,焦点跳到 Text3 上。(本题不需要编写代码,只需设置 对应的属性即可)。

3、窗体上有一个框架名称为 Frm1,标题为“框架” ,高度为 2000,宽度为 3000.再在框架中画一个文本 框,名称为 T1 , 距离框架左边的距离为 500,上边的距离为 300。文本框的初始内容设置“文本框” , 同时将窗体的标题设置为“框架及文本框” 。

4、1)设置图像框的初始大小 Height 为 1500,width 为 2000; 2)窗体的最大化,最小化按钮不可见;(提示设置窗体的 MaxButton 和 MinButton 属性) 3)单击缩小按钮,图像框的大小缩小 300,即 Height 和 width 分别减少 300; 4)单击放大按钮,图像框的大小增加 500,即 Height 和 width 分别增加 500; 5)按回车键相当于按“放大”按钮;(提示设置按钮的 Default 属性) 6)按“Esc”键相当于按“缩小”按钮;(提示设置按钮的 Cancel 属性) 注意:控件的初始属性必须通过属性窗口来设置,否则不给分。 (本题将几个简单操作题合并) 图附 2 简单操作 4 运行界面

5、Form1 上画一文本框 Text1,通过属性窗口设置属性实现以下功能: 1)窗体标题为“设置文本框属性” 2)文本框可显示多行,显示垂直滚动条,用 3 号黑体显示“程序设计”

89

6、窗体上有两个名称分别为 cmd1 和 cmd2 的按钮, 运行程序时只能看到 cmd1, 单击 cmd1, cmd2 则 出现,cmd1 隐藏,单击 cmd2,则 cmd1 出现,cmd2 隐藏。

7、建立如下菜单: 第一级 文件 打开 新建 关闭 编辑 第二级 名称 File Open New Close Edit 有效性 有效 有效 有效 无效 有效

8、窗体上有一个文本框和标题为“复制”的命令按钮 C1,编程实现:运行时窗体标题为“修改文本框 内容”(可在 Form_Activate ()事件中修改);单击按钮,按钮上的标题复制到文本框,并使按钮 不可用;单击窗体空白处,按钮可用。(20 分)

图附 3 简单操作 8 运行界面

9、单击命令按钮 Cmd1, 用代码设置滚动条 Vsb1 的属性: max 为窗体高度, min 为 0, LargeChange 为 50,SmallChange 为 10。当拖动滚动条的滑块时,窗体上显示滚动框的位置值。

10、窗体上有一个文本框和一个水平方向的滚动条, 编程设置: 将滚动条的 min、max 、Largechang、SmallChang 的初始值分别设置为 0,2200,25,5;当移动滚动条时,可扩大或缩小文本框

的高度, 并保持高与宽的比例为 1:3。

11、窗体上有一个文本框和一个垂直方向的滚动条, 在窗体上设置: Text1.Text 为 “家” FontName , 为黑体,滚动条的 min、max 、Largechang、SmallChang 的初始值分别设置为 10,100,5,2; 当移动滚动条时,Text 的字体随之改变。

12、窗体中有一个标签和一个计时器,设置计时器的间隔为 3 秒。每 3 秒标签显示→隐藏→显示。

13、窗体上有垂直和水平滚动条,设置其最大值 100,最小值 0,增量为 10,鼠标单击滚动条时将两 个滚动条的值分别显示在两个标签中,显示的格式类似 X=36,Y=80。

基本应用题(20 分/题)

1、在名称为 Form1 的窗体中将窗体标题设置为“售货机”,在窗体中已有一个名称为 Pic1 的图片框, 请画两个标签 Label1 和 Label

2、两个框 Text1 和 Text

2、一个名称为 Command1 的命令按钮(如 图所示),使用属性窗口设置控件属性。程序运行后,输入货物的数量及单价,单击“总价=”按钮求 出总价(总价=数量*单价)并输出在 Pic1 中(不必进行数据的有效性验证)。

图附 4 基本运用 1 运行界面 图附 5 基本运用 2 运行界面 90

2、窗体中有两个标题分别为“体育”和“音乐”的复选框和两个标题为“选修”和“不选修”的单选 按钮,一个名称为 Label1 的标签。编写适当的事件过程,使得程序运行时对复选框和单选按钮进行选 择,单击窗体,可根据下表的规定在标签中显示相应信息。 选择 Check1 和 Option1 Check1 和 Option2 Check2 和 Option1 Check2 和 Option2 Check

1、Check2 和 Option1 Check

1、Check2 和 Option2 在标签中显示的信息 只选修体育 不选修体育 只选修音乐 不选修音乐 选修音乐和体育 不选修音乐和体育

3、窗体上有一个文本框 Text

1、一个标签 Label1 和两个名称分别 C1 和 C2 命令按钮,标题分别为 “显示”和“恢复”,编写程序,程序运行时,在文本框中输入“学习VB 知识”,再单击“显示”按 钮,则标签和文本框消失,并在窗体上显示文本框的内容。单击“恢复”按钮则标签和文本框恢复如初。

4、窗体上有两个标题分别为“添加”和“清除”的命令按钮,以及两个列表框。编写程序,在右边的 列表框中选择一个列表项,单击“添加”按钮,则把该选项移动左边的列表框中。在左边的列表框中选 择一个列表项,则把该项移回列表框中。

5、窗体上一个名称为 C1,标题为:“输入”的命令按钮和一个文本框。程序运行后,单击命令按钮则 弹出一个对话窗口提示“是否输入”,提示窗口上只有两个命令按钮:“是”和“否”,文本框中显示 选择的命令按钮返回值。

6、窗体上有一个名称为C1,标题为“确定”

推荐第10篇:VB数据库SQL语句学习

1.Select * from student查询所有原始记录

2.Select StudentID, StudentName from student 只查询学号和姓名

3.Select StudentID as 学号, StudentName as 姓名, Sex as 性别,Cla as 班级,NormalScore as平时成绩,ExperimentScore as 实验成绩, ExaminationScore as 考试成绩 from student

4.Select * from student where sex=’男’只需要查看男生的成绩

5.Select * from student where NormalScore>80只需要查看平时成绩大于80分的记录

6.Select * from student where studentname like ‘陈%’查询姓陈的同学的记录

7.Select * from student order by examinationScore根据考试成绩排序

8.Select * from student order by examinationScore排序---降序

9.Select Sum(examinationScore) as 总成绩 from student求总成绩

10.Select Avg(examinationScore) as平均成绩 from student求平均成绩

11.Select count(*) as 总记录数 from student求总记录数

12.Select Max(ExaminationScore) as 最高分 from student求最高分

13.Select Min(ExaminationScore) as 最高低分 from student求最低分

14.Select Cla as 班级, Avg(ExaminationScore) as平均成绩 from student group by cla各班级成绩的分类汇总

Public Cla frmMain

Private ObjCnn As New OleDbConnection

Private ObjCmd As OleDbCommand

Private StrDir As String = "D:\MIS1025\StudentMgr.accdb"

Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles MyBase.Load

ObjCnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & StrDir

ObjCnn.Open()

ObjCmd = New OleDbCommand

ObjCmd.Connection = ObjCnn

End Sub

Private Sub FindRecord(ByVal StrSQL As String)

ObjCmd.CommandText = StrSQL

Dim rd As OleDbDataReader = ObjCmd.ExecuteReader

Dim tbl As New DataTable

tbl.Load(rd)

DataGridView1.DataSource = tbl

End Sub

Private Sub CmdFind_Click(ByVal sender As System.Object,

System.EventArgs) Handles CmdFind.Click

FindRecord(txtSQL.Text)

End Sub ByVal e As

第11篇:VB自主学习题目(优秀)

VB自主学习题目

利用已经学过的知识,编写程序对数组排序并保存。

1.要求利用文本框或inputbox 输入要排序的数组的长度(>=100),并生成相应数据;或者通过通用对话框读取指定文件;(10分)

2.要求至少使用两种方法,比如冒泡法,选择法,插入排序法,快速排序法,请利用命令按钮控件数组或下拉框或者菜单编辑器的形式来选择排序方法;(30分)

3.要求将排序好的数据以文本框或列表框或Print方法显示在Form2窗体中;(15分)

4.要求记录两种方法为了排序而分别进行的循环次数,并显示Form3窗体中;(15分)

5.要求将排序前的数据和排序后的数据写入文本文件并保存,请尽量使用通用对话框来选择文件保存的位置;(20分)

6.界面可尽量美观。(10分)

提示:

请务必在15周提供实验报告和最终程序。

(实验报告中要求有整个程序设计的详细步骤,有每个窗体的运行界面截图,以及最终运行结果的截图)

五六机房是全天开放,请抓紧时间。

第12篇:如何入门学习VB语言

如何入门学习VB语言

一.VB是啥?

VB 是Visual Basic编程言语

编写计算机程序需求运用计算机编程言语。计算机编程言语是人和计算机“对话”的桥梁。就像人类的言语相同,计算机编程言语也有许多。其时较为广泛运用的言语有“C++”、“Pascal”、“Basic”等。在许多的计算机编程言语中,以BASIC言语最为易学易用。

BASIC是英文Beginner’s All purpose Symbolic Instruction Code的缩写,意思为初学者通用符号指令代码,一向都是程序设计入门的首选言语。

二.学VB有啥用?

VB能做许多东西,只需你想去做。

运用程序。数据库程序。只需能想得到的根柢上都能够。可是像操作系统等大型杂乱的编程如今通常都用C来编的。用VB很难做得到。要做程序员,单单只会VB还不可。最许多学点其他的。比方ASP数据库 。NET。这样才做出十分好的东西来

三.如何学好VB

VB是一种很简略上手的言语,归于典型的入门简略,知晓很难。

在如今,VB仍然是世界上运用最广泛的言语.对比适合的范畴是C/S架构的MIS,衍生言语VBScript又是一种十分适合B/S架构MIS等的言语,他的简略和易修改十分适合处理系统需求多变的状况.对数据库的支撑也极好,有MS在后面支撑,你还忧虑啥,不过任何言语都在进化,VB也不破例,LZ能够以如今的根底学习.net架构,习气打开的需求.

若是你是一巧不通的话,我能够介绍一个学习的办法:

1.先看看书,大致的了解了一些根柢的东西,不至于\"盲人摸象\"

2.从小东西学起(全部在于实习),例如:VB 的三角函数啊.时钟啊.我想在书中是会有的.也能够看看网上的教程...

3.一个很重要的主张:等你现已有所收效了,最佳去上个VB的高档补习班.打个比方:时辰练的最佳,也得有自个来帮你打通经脉啊...

第13篇:VB说课稿

《组合框的使用》说课稿

各位领导、老师大家好!

今天我说课的题目是《组合框的使用》,我将从教材分析、教学目标、教学重点难点、教学方法、教学过程、教学总结六个方面谈谈我的教学思路。

一、教材分析 先说一说教材。

本课题目来自计算机应用专业中职二年级学生的教材,人民邮电出版社出版的可视化编程应用——Visual Basic6.0中文版的项目五—设计学生信息录入系统。本课知识点是可视化界面设计和编程使用的重要控件之一。因此制定了以下的教学目标。

二、教学目标

知识目标:

1、掌握组合框的添加方法和样式的区别

2、掌握组合框中列表项的添加方法

3、掌握组合框和其他控件的结合使用。

能力目标:

1、培养学生的窗体界面的设计能力

2、培养学生综合运用所学知识解决实际问题的能力。情感目标:

1、增强学生的信心,培养学生对专业的兴趣;

2、通过分组教学提高学生交流沟通和团队协作意识;

3、养成良好的编程习惯和编程规范;

为了让学生很好的掌握组合框的使用我把教学重点和教学难点分别放在

三、教学的重点、难点

教学重点:组合框列表项的添加方法

教学难点:学生信息的录入功能实现(组合框和其他控件的结合使用)

四、说教法学法

为了让学生达到教学目标,掌握重点难点,在教学方法上,遵循以学生为主体、教师为主导的教学理念,采用任务驱动教学法,并对学生进行分组教学,在布置任务后采取各个小组进行竞赛的方法,看哪个小组做得好做的快,做的好小组可以去指导其他的小组。

在教学过程的实施中采用以下步骤:

五、说教学过程(也是教学思路的重点)

(一)导入新课 展示学生们日常熟悉的组合框的应用的实例,通过对实例的分析,告知学生组合框是什么,引出本节课我们要学习的项目知识点组合框的应用。

展示本节课的项目运行文件,看看组合框的功能是什么?

(二)、搭建整体的程序界面(设置好控件属性)

1、分组进行,首先把学生分成4个小组,用几个课时?每个小组接到的任务都是按照老师给出的程序运行结果搭建程序界面。告知学生组合框在工具箱中的位置,添加方法和以前学过的按钮、文本框等控件一样,直接点击,在窗体合适的位置上拖动画出。程序界面中需要的其他控件学生已经学习过并能掌握,只有组合框没有用过,因此在界面设计中组合框是学生遇到的主要问题。

2、通过每个小组设计的界面情况,和老师展示的界面进行对比,发现不能解决的部分由老师进行知识的逐一补充,从而解决教学的重点内容,由于学生解决的问题没有办法实现,小组之间又进行激励的比较,因此学生的注意力比较集中,认真听需要解决问题的办法,因此这种遇到问题给出解决问题的方法,学生接受起来不是很被动,效果比较理想。

针对以上情况,解决的知识点有两个,一是组合框中列表内容的添加,(组合框的特点为,文本框和列表框的组合)二是组合框的样式,下面逐个解决。

列表内容的添加方法有三种: 1) 使用组合框的list属性,直接在list 属性中添加列表项的内容,添加一个回车一次。

2) 使用程序代码添加列表项的内容,双击窗体的空白区域,在出现的程序代码窗口中的form_load()事件中添加如下代码

Combo1.AddItem \"2012年9月1日\" Combo1.AddItem \"2013年9月1日\" Combo1.AddItem \"2014年9月1日\" 建议同学们养成使用这种方法的习惯。因为在编程过程中,熟悉代码的写法和规范是学习程序的基础。 3)使用 with 语句

组合框的样式有三种:

1) 组合下拉式组合框 2) 组合式组合框 3) 简单下拉式组合框

方法是通过改变组合框属性Style的值即可。

让学生继续刚才的任务,使用任意一个方法去添加组合框中的下拉列表项的内容,并使用不同组合框的样式获得老师展示的效果。并总结等完成后分析汇报。

(三)、实现录入信息功能

通过前面知识点的解决,学生可以把程序界面设计完成,那么怎么才能把在组合框中选择的内容在列表框中显示出来,达到信息录入功能,还是我们进一步需要解决的难点问题。

首先还是由各个小组进行讨论,分析。老师提问,学生阐述解决问题的思路,在思路正确的前提下,告诉学生怎么用VB的方法去实现,编写

按钮事件相应代码,列表框中最后需要的内容为组合框中选择出来的文本和其他控件中的文本组合,作为列表框中的内容最后显示,因此引导学生写出代码,采取逐步攻破的方法,循序渐进,降低学生的难度,让学生简单易懂。

infr = TxtNumb + \" \" + Sname + \" \" + Combo1.text + \" \" + Combo2.Text+””+combo3.text LstShow.FontSize = Combo4.Text LstShow.FontName = Combo5.Text LstShow.AddItem infr 总结组合框的几个常用属性。Text listIndex等

(四)小组总结汇报

每个小组完成后,在机器上演示,由教师先进行点评,指出出现的问题。后由其他小组进行点评,做的好的小组可以说说自己的经验和方法,做的不好的小组要进行一个整改总结,从而使每个学生都能达到一个知识点的掌握和应用。在教师点评和小组互评中又能使重点内容的掌握和难点的突破进一步巩固。

(五)任务拓展

为了巩固知识点,进一步提高学生解决问题的能力,要求学生利用课下时间去思考教师给出的界面上没有实现其他的功能,试着去解决 ,成功地将任务由课内延伸到了课外,实现了任务的拓展和提升,也为下一步教学做好了准备。

六、教学总结

在这次的教学任务实施过程当中,遵循以学生为主体,教师为主导的教学理念,采用任务驱动教学法, 通过遇到问题解决问题的思路,带领学生逐个去攻破难关,掌握知识点。使学生很好的提高了解决问题的能力。

我的说课到此结束,不当之处,敬请各位领导批评指正,谢谢!

第14篇:VB时钟

二零零九 年 五 月

目 录

摘 要 ...............................................................................i 第1章 概 述 ......................................................................1

1.1 引言 ..........................................................................1 1.2 设计平台 ......................................................................1 第2章 开发工具简介 ..................................................................2

2.1 VisualBasic6.0简介 ............................................................2 2.2 运用的控件和主要对象 ..........................................................2 第3章 设计实现 .....................................................................6

3.1画时钟表盘上的所有直线元素 .....................................................6 3.2修改时针的形状 .................................................................6 3.3计时器的Interval(间距)属性设置 ................................................6 3.4软件代码 .......................................................................7 第4章 总 结 .......................................................................16

4.1 结论 .........................................................................16 4.2 心得体会 .....................................................................16 参考文献 .............................................................................17

- i

第1章 概 述

1.1 引言

visual basic继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。随着21世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了用户更加方便的,更加有舒适的心情,设计出一个比较舒心的时钟显示。 1.2 设计平台

VB全称Visual Basic,它是以Basic语言作为其基本语言的一种可视化编程工具。 它继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。随着21世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了使用户更加地使用舒心。通过这学期来Visual Basic的学习,我初步掌握了Visual Basic语言的最基本的知识,于是在张老师的指导下动手用Visual Basic编写了这款时钟软件。

- 1

个矩形就可以创建一个 Timer 控件了。跟其他控件不同的是,无论你绘制的矩形有多大,Timer 控件的大小都不会变外,Timer 控件只有在程序设计过程中看得见,在程序运行时是看不见的Timer事件:当Timer控件设置为有效时,计时总是从其Interval属性的设置值开始,每当计时时间到达时产生Timer事件,可以在该事件过程中编写代码,以高诉Visual Basic在每次计时时间到时该做什么。

(1)Timer 控件的属性:

Timer 控件可以使用 Name 属性与 Enabled 属性,但最重要的是 Interval 即时间间隔属性。

Interval 属性决定了时钟事件之间的间隔,以毫秒为单位,取值范围为 0 ~ 65535 ,因此其最大时间间隔不能超过 65 秒,即一分钟多一点的时间。如果把 Interval 属性设置为 1000 ,则表示每秒钟触发一个 Timer 事件。

其语法格式:

Timer.Interval = X ,其中,X 代表具体的时间间隔。 (2)Timer 控件的 Timer (定时)事件:

当一个 Timer 控件经过预定的时间间隔,将激发计时器的 Timer 事件。使用 Tim 标签控件(Label)的主要事件:

所谓的事件,其实就是用户对应用程序的操作,如第一章中用鼠标点击命令按钮触发的 Click 事件。

事件的作用在于触发程序的执行,如第一章中的 Click 事件改变了标签控件的 Caption 属性。

标签控件的主要作用在于显示文本信息,但也支持一些为数不多的事件。 I、Click 事件(鼠标单击):

用鼠标点击标签时触发的事件,如改变标签的字体属性: Private Sub LblShow_Click() LblShow.FontName = \"隶书\" End Sub II、DbClick 事件(鼠标双击):

鼠标双击引发的事件,如改变标签的可见性: Private Sub LblShow_DbClick() LblShow.Visible = False End Sub (3)文件操作控件

在一个应用程序中,对文件的处理是一个比较常用的操作,如打开文件、保存文件,等等。Visual Basic 提供了三个控件对磁盘文件夹与文件进行显示与操作,它们分别是:DriveListBox(磁盘列表框)控件、DirListBox(文件夹列表框)控件,以及 FileListBox(文件列表框)控件 。事件可以完成许多实用功能,如显示系统时钟、制作动画,等等

- 3

本属性用来设置标签的边框类型,有两种值可选:0,代表标签无边框;1,代表标签有边框,并且具有三维效果,如图二显示的两个标签:

BorderStyle 属性可以在设计界面时指定

标签名.BorderStyle = 0/1(0或1,两者取一)

击一下,标签有边框,再点一下,标签边框消除,再点一下,边框又出现,以此类推。回答

Ⅲ、Font(字体)属性:

本属性用来设置标签显示的字体,既可以在创建界面时设定,也可以在程序中改变。 在创建界面时设定

在图四的设置界面中,除了可以选择字体,还可以设置显示文字是否为粗体、斜体、下划等。

在程序中改变 Font 属性,程序代码书写规则如下:

字体改变:标签名.FontName = \"字体类型\",其中,“字体类型”可以是中文,如“宋体”、“隶书”;也可以是英文名,如“Arial”、“Times New Roman”,等等,不过,这些字体名称必须是电脑上有的。

字体大小改变:标签名.FontSize = X ,其中,X 是阿拉伯数字,代表字体是几号字。如:LblShow.FontSize = 11 。

粗体(FontBold)、斜体(FontItalic)、下划线(FontUnderline)、删除线(FontStrikethru)属性的设置值是代表真/假的逻辑判断值 True/False ,如下:

LblShow.FontBold = True/False LblShow.FontItalic = True/False Ⅳ、Alignment(对齐)属性:

此属性用来设置标签上显示的文本的对齐方式,分别是:左对齐,0;右对齐,1;居中显示,2。可以在界面设置时设定,

也可以在程序中改变,代码如下: 标签名.Alignment = 0/1/2

- 5

图3.2 创建的新工程

下图即为编辑时钟软件的工程窗口,可执行为一个“标准 EXE”文件。具体代码如下。

图3.3 时钟编辑窗口

3.4软件代码

1、主程序代码

Private Sub Form_Load()

Call PutWindowOnTop(Form1)

Call drewfrm(Me.hWnd, App.Path + \"\\clockh.pfm\")

closewave = False

Label1.Caption = Right(Format(Now, \"yy-mm-dd\"), 2)

htoday = False

Dim a As Integer, b As Integer, c As Integer

Dim inputdata As String

Open App.Path + \"\\forever.dat\" For Input As 1

On Error Resume Next

Do While Not EOF(1)

- 71

Close #1 End Sub Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

If Button = 2 Then

PopupMenu MFile

ElseIf Button = 1 Then

Dim ret As Long

ReleaseCapture

ret& = SendMeage(Me.hWnd, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0)

End If End Sub Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)

Label1.ToolTipText = Format(Now, \"yyyy年mm月dd日hh:mm\") End Sub Private Sub Mclwav_Click()

closewave = True End Sub Private Sub Openwave_Click()

closewave = False End Sub Private Sub Showfrm_Click()

Form2.Show

Me.Hide End Sub Private Sub small_Click()

- 8

图3.4 时钟界面

2、时钟界面子程序 Private Sub Form_Load()

Call PutWindowOnTop(Form2) End Sub Private Sub Picture1_DblClick()

Form1.Show

Unload Me End Sub Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

If Button = 1 Then

Dim ret As Long

ReleaseCapture

ret& = SendMeage(Me.hWnd, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0)

End If End Sub

3、闹钟提醒设置

- 10

worktxt = \"闹铃\"

Else

worktxt = \"提醒\"

End If

If Option3.Value = True Then

worktxt = worktxt + \"每日\"

Else

worktxt = worktxt + \"今次\"

End If

If Option2.Value = True Then

If Option4.Value = True Then

worktxt = worktxt + Timetxt + \"#\" + Datetxt + Alerttxt

b = True

Else

worktxt = worktxt + Timetxt + Alerttxt

End If

Else

worktxt = worktxt + Timetxt

End If

If Text1.Enabled = True Then

If Text1.Text \"\" Then

Text1.Text = Text1.Text + vbCrLf + worktxt

Else

Text1.Text = worktxt

End If

Open App.Path + \"\\forever.dat\" For Output As 1

Print #1, Text1.Text

Close #1

forever = Text1.Text

ElseIf Text2.Enabled = True Then

If Text2 \"\" Then

Text2.Text = Text2.Text + vbCrLf + worktxt

Else

Text2.Text = worktxt

End If

End If

End If End Sub Private Sub Form_Load()

Dim inputdata As String

Open App.Path + \"\\forever.dat\" For Input As 1

On Error Resume Next

Line Input #1, inputdata

forever = inputdata

Do While Not EOF(1)

- 12start) \"\" Then

clockn(d) = Mid$(Mid$(Text2, start, last

Line Input #1, inputdata

Select Case typetime(inputdata)

Case 1

Clockf(a) = Mid$(inputdata, 5)

a = a + 1

Case 3

Alertft(b) = Mid$(inputdata, 5, 5)

alertfms(b) = Mid$(inputdata, 10)

b = b + 1

Case 4

If Mid$(inputdata, 11, 8) = Format(Now, \"yy-mm-dd\") Then

htoday = True

Alertot(c) = Mid$(inputdata, 5, 5)

alertoda(c) = Mid$(inputdata, 11, 8)

alertoms(c) = Mid$(inputdata, 19)

c = c + 1

End If

End Select

Loop

alc = c

If Option2.Value = True Then

Datetxt.Enabled = False

End If End Sub Private Sub Option4_Click()

If Option2.Value = True Then

Text1.Enabled = True

Text2.Enabled = False

Else

Text1.Enabled = False

Text2.Enabled = True

End If

If Option2.Value = True Then

Datetxt.Enabled = True

End If End Sub Private Sub Timetxt_Click()

Timetxt.SelStart = 0

Timetxt.SelLength = 5 End Sub

- 15

参考文献

[1] 刘彩虹,沈大林.Visual Basic程序设计案例教程[M].中国铁道出版社,2008,2 [2] 龚沛曾,陆慰民,杨志强.Vsual Basic 程序设计教程[M].高等教育出版社,2003,6 [3] 丁爱萍.Visual Basic程序设计(第3版)[M].电子工业出版社,2008,1 [4] 卢毅.Vsual Basic实例教程[M].科学出版社出版,2007,2 [5] 赵欣胜,亢慧娟,刘晟宏.Vsual Basic 经典范例50讲[M].科学出版社出版,2007,5

- 17 -

第15篇:VB题库

三大问题威胁大学生打工权益

记者采访发现,目前大学生暑期打工的合法权益主要受到三大问题威胁:一是招聘中介良莠不齐。目前南昌大学生暑期打工招聘市场的管理基本处于空白状态,招聘中介准入门槛低,市场无序,一些没有任何公司背景的个人也私下进入学校招聘,隐患重重。江西科技师范学院调查发现,林培钙的工作单位不明,但他以个人的名义,利用学生招聘学生,一传十,十传百,短短十几天就招聘上百人。

江西科技师范学院党委副书记黄国俊说,如果任由林培钙这样的无固定职业人员在高校招聘学生外出务工,大学生涉世未深,万一被骗去搞传销,后果难以料想。

二是用工协议存在“陷阱”。高校学生与招聘中介签订的协议书不乏这样的规定:每天工作时间为11小时,学生“必须完成”公司规定的工作时间;学生“必须服从”招聘单位的安置及调配。相反,用工协议对学生打工的劳动保护措施、就业环境情况等均未提及。

南昌市劳动和社会保障局劳动监察处处长战建军说,用工协议中的此类“霸王条款”违反了劳动法规,如果用人单位把学生安排在污染严重的地方工作,或者安排到不健康的娱乐场所上班,学生的身心健康必然会受到损害。

三是学生打工缺乏有效监管。大学生暑期外出打工都是在校方不知情的情况下进行的,高校根本无法监管。一些学校团委虽然直接参与招聘学生外出打工,但是管理不到位。在校团委的组织下,7月初,南昌航空大学有200名学生赴广东打工。学校团委书记黄柯说,校方委托南昌朝阳教育咨询公司联系用工单位,但校方对学生要去什么样的企业打工并不了解,事先也没有进行调查。鉴于这种情况,学校决定派老师随同前往“呆个三四天看看情况”。

江西省劳动和社会保障厅仲裁处负责人认为,学生暑期近两个月的打工期内没有校方人员跟踪监管,如果学生在异乡发生劳资纠纷和工伤事故,学生的合法权益很难得到保障。 暑假到了,学生们会怎样利用这长假?家境好的估计会选择请家教或去补习班吧?但对于很多家庭特别是农村来说,因为TA们的家境并不富裕,需要通过打工挣钱补贴学费、生活费,平时打工影响学业,只好利用假期,一来可以锻炼自己,二来可以增添家庭收入,或者赚点小钱买自己中意已久的东西。

那么,暑假工是怎么回事呢?

TA们一般都会去找家教、销售、送货、派传单,或服务行业之类的工作,因为这类工作大都属于短期类工作,而且也不需要什么培训,基本上学生都能胜任。

为父母减轻经济压力——现在大学的学费昂贵,每个月生活费一人也要好几百元,而多数学生家境一般,没有固定的经济来源。穷则思变。学生们或为了能使自己基本生活有保障,或为了生活得更好一点,便纷纷走出课堂和校门,利用自己的一技之长,开始打工,这样也可以为家里承担一部分的经济压力。

锻炼自我——当前,大学生所面临的一个突出问题便是就业。就业形势的日益严峻和未来社会靠自己能力吃饭的,现实对于当代大学生来说,无疑是一个不容回避的选择。为此,大学生们将锻炼自己的空间不仅仅局限在校园内,而日益把眼光投身到丰富多彩的社会生活中去。很多人把暑期打工看作是毕业找工作前的一次“预演”。学生可以从大二或大三就在一家认准的公司实习,甚至可以接受零工资,在实习期间打动用人方,这也不失为进入公司的捷径。缺少工作经验成为所有在校大学生的不足,有的大学生把实习和兼职当成获得经验的最佳途径。

至于江湖险恶,暗藏着传销之类的陷阱,这也是他们在社会实践中需要面对的,增长生活经验、提高辨别能力的问题。

表现自己——在大学,并不是每一位大学生都能拥有中学尖子生时代的“荣耀”与“辉煌”,自我价值的失落是普遍存在于大学生中的一种彷徨而苦闷的心理。为此,一部分大学生另辟蹊径,选择了兼职道路,企图在这一领

域中重新寻回那份“自我感觉”。一部分同学将暑期打工看作是一种走向成熟的标志,可以开学以后能颇为自豪地对同学讲上一段自己打工的经历。

学生们暑假打工,共同面对的问题也不少。涉世未深的TA们,缺乏防范意识,在找暑期工的过程中,肯定会遇到一些不公平的待遇。

第一、学生暑假工,很多都是没有签合同的,工作存在着很多安全性的问题,人身安全没有保障。况且TA多数是进工厂, 上班时间长,伙食差,就算体质好的也会累倒晕倒。如果没有熟人,盲目的去打暑假工,如果出了事,很难解决,厂方会负责么?

第二、TA们也许会遭遇到骗子。

第三、学生打暑假工,劳累的付出,得到的工资并不多,除去伙食,住宿费,除去来回车费,所剩无几了。学生们暑假打工,而对用人单位一般只会问薪金待遇,很少提及其它方面。在此提醒学生们,一定要注意维权。用人单位需给学生缴纳保险,签订劳动合同。建议学生们避免到一些免费的公共人才市场及职介所求职,以免上当受骗。在打暑假工期间要保持清醒的头脑,注意了解用人单位的实际情况,谨慎对待用人单位收取押金或扣押身份证。

暑期工劳动时间长工资较低

每年暑假,都有不少“准大学生”、“准高中生”们提前进入社会体验“打工生涯”,一是提前接触社会,增长阅历,一是利用空闲时间赚点零花钱。连日来,记者深入这群“暑假工”群体,进入工厂车间,感受学生们的打工生活。

学生:每天工作10.5小时挣30-40元

日前上午9时许,记者来到阳东某五金刀具厂,从6月份开始,该厂陆续招收了10多个暑期工。暑期工每天的工作就是拧螺丝。记者在现场看到,偌大的车间,这群暑期工被特别安置在一旁,他们一手拿着电动螺丝刀,一手固定螺丝和刀柄,将一颗颗直约2.5毫米的螺丝固定到刀柄上,完成一个成品的整个过程需要8~10秒钟。

18岁的暑期工小攀就是其中一员。他一开始的目标是为自己攒够买电脑的钱。然而,在工作了14天之后,他开始对实现自己的“目标”失去了信心。“这里暑期工跟正式工人一样,每固定一颗螺丝4分钱,我每天从早上7点半工作到晚上7点半,中间休息一个半小时,完成1000颗也就只有40元,有时领到难做的工作,我一天只能挣30元左右。”小攀说。

记者在走访中了解到,部分暑期工的经历跟小攀类似,工作时间长,但工资却普遍不高,部分工厂还存在着暑期工与正式员工“同工不同酬”的问题。

刚从阳东一中毕业的小文,目前在惠州某杯具工厂打暑期工。6月中旬到该工厂之后,小文被安排到“夜班组”,每天的工作时间是晚上8点到第二天早上7点,工资标准是8元/小时。小文告诉记者,该工厂正式工人除了有底薪,加班工资还是暑期工的1.5倍。“我们每个月要交300元的伙食费,原本工厂是包住的,但环境不好,我跟另外两位同学在外面租房,350元/月,赚不了什么钱,权当体验生活。”小文说。

用工企业:暑期工应选择做技术含量低工种

对于用工企业来说,这一群“初出茅庐”的学生又意味着什么?他们招收暑期工的初衷是什么?对此,记者采访了部分用工企业负责人了解情况。

据阳东县某五金厂的车间主管李先生表示,企业招收暑期工主要由于部分企业在暑期属于旺季,订单或客流较多,需要更多的人手。而与聘请临时工或小时工不同,暑期工一般都是“按件计算工钱”,做多少算多少,不会存在小时工偷懒、扯皮的现象,这可以提高企业工作的效率而降低成本。另外,李先生还表示,大部分暑期工没有受过专业的职业培训,工作技能较低,因此交给他们的一般都是技术含量低的工作。

暑期工虽然可以降低企业用工成本,但是,对于用工企业来说,使用暑期工还是具有一定“风险”。李先生表示,部分学生在工作的时候由于缺乏毅力,在工作过程中吃不了苦,且情绪化明显,管理难度较大,部分缺乏责任感的学生甚至随意离开工作岗位,扰乱企业的正常工作秩序甚至耽误工期。

“我之前接触过的实习生总体来说是比较负责的,在工厂的历练能让他们明白父母赚钱的艰辛,不少学生经历了暑期工之后,会明白知识和技能的重要性,这个经历能让他们端正学习态度。”李先生说。

人社局:月工资标准不低于1010元

暑期工应如何保护自己的合法权益?对此,市人社局有关负责人提醒,学生找暑期工时最好到正规的职介,千万不要相信路边广告。

学生暑期打工首先要清楚自己的劳动权益。按照有关规定,用人单位是绝不能以押金、服装费、入职费、建档案等各种名目向求职者收取任何费用的,其工资最起码不能低于当地最低工资标准(目前阳江市最低工资标准为1010元/月,最低日工资和最低小时工资按此推算),在工作期间如超时加班的,用人单位还必须按照规定支付加班费。暑期工的工作时间多为一个半月,在工资结算方面,该负责人建议采用周薪制或10天结算一次工资,这样可防止企业“欠薪”。

近年来,市人社局在处理暑期工有关纠纷中,发现有不少双方没有签订合同的情况,出现纠纷时,用人单位硬说没有招用有关学生,而学生又拿不出证据,给查处带来困难。因此,学生以普通劳动者身份打工,即使工作两天,企业也应与其签订劳动合同,明确双方的权利义务。

学生在打暑期工时要保存好与用人单位建立劳动关系的相关证据,如劳动合同、厂牌、工作证等。学生在打暑期工期间,劳动保障权益受到侵犯,可直接到当地人社局劳动监察机构投诉反映,也可拨打维权热线:12333或2231100。

第16篇:VB学习材料

《VB期末范围题总汇》

1. 求随机10个整数的最大值、最小值、平均值以及和; Dim a(1 To 10)

Private Sub Command1_Click()

Randomize

Picture1.Print \"产生的随机数为:\"

For i = 1 To 10

a(i) = Int(Rnd * 99 + 1)

Picture1.Print a(i);

Next i

Picture1.Print

End Sub

Private Sub Command2_Click()

Dim max, min, ave

max = a(1)

min = a(1)

ave = 0.1 * a(1)

For i = 2 To 10

If a(i) >max Then max = a(i)

If a(i)

ave = ave + 0.1 * a(i)

Next i

Picture1.Print \"最大数为:\"; max

Picture1.Print \"最小数为:\"; min

Picture1.Print \"平均数为:\"; ave

End Sub

2.求水仙花数

Private Sub Form_Click()

Dim a, b, c As Integer \'a(个)b(十)c(百) For a = 0 To 9

For b = 0 To 9

For c = 1 To 9

If a ^ 3 + b ^ 3 + c ^ 3 = a + 10 * b + 100 * c Then MsgBox 100 * c + 10 * b + a

End If

Next c

Next b

Next a

End Sub

3.百元买百鸡问题;

Option Explicit

Const a = 5, b = 3, c = 1

Private Sub Form_Activate()

Dim i As Integer, j As Integer, k As Integer, n As Integer For i = 1 To 100

For j = 1 To 100

For k = 1 To 100

If i * a + j * b + k * c = 100 Then

n = n + 1

List1.AddItem \" 公鸡:\" & i & \" 母鸡:\" & j & \" 小鸡:\" & k End If

Next: Next: Next

MsgBox \"共有组合:\" & n

End Sub

求1000以内的所有完数

一个按钮里调用的过程

Private Sub Command1_Click()

OutputWanNumber 1000

End Sub

4.\'求完数的过程

Private Sub Form_Click()

Dim i, j As Integer

For i = 4 To 100

temp = 1

For j = 2 To i / 2

If i Mod j = 0 Then

temp = temp + j

End If

Next j

If temp = i Then

Print i

End If

Next i

End Sub

5.求各位数字之和

input a:\'输入任意数

do

b=a mod 10:\'取a的末位数

sum=sum+b:\'求和

a=a \\ 10:\'去掉末位数

loop until a=0

print \"sum=\";sum:\'输出

end

(dim n as string

input n

for i = 1 to len(n)

sum=sum+val(mid(n,i,1))

next i

print sum)

6.求最小公倍数

Private Sub Form_Load()

Form1.AutoRedraw = True

Dim n1%, m1%, m%, n%, r%

n1 = InputBox(\"输入n1\")

m1 = InputBox(\"输入m1\")

If m1 >n1 Then \'为了求最小公倍数,增加m,n变量

m = m1: n = n1

Else

m = n1: n = m1

End If

Do

r = m Mod n

If r = 0 Then Exit Do

m = n

n = r

Loop

Print n1; \",\"; m1; \"的最大公约数为\"; n

Print \"最小公倍数=\", m1 * n1 / n

End Sub

7.求逆序数(感觉题目类型太多)

8.级数有限项求和问题(题目类型太多)

9.求质因子问题

Private Sub Command1_Click()

Dim N As Integer, I As Integer

N = Val(InputBox(\"请输入2的整数:\"))

I = 2

Do

If N Mod I = 0 Then

Print I;

N = N \\ I

Else

I = I 1

End If

Loop While N 1

End Sub

10.字符统计

Option Base1

Option Explicit

Private Sub Command1_Click()

Dim i as integer,A(26) as integer,n as integer

Dim S as string*1,Strl as string

Strl=Text1

n=Len(Strl)

For i=1 To n

S=Mid(Strl,i,1)

If UCase(S)>=”A” And UCase(S)

A(Asc(UCase(S))-64)+1

End If

Next i

For i=1 To 26

List1.Additem Chr(64+i) & “:” & A(i)

Netx i

End Sub

Private Sub Command_Click()

End

End Sub

第二大题

1.判定素数过程

Function isprime(Num As Long) As Boolean

If Num

Dim i As Long

For i = 2 To Sqr(Num)

If (Num Mod i) = 0 Then

isprime = False

Exit Function

End If

Next i

isprime = True

End Function

Private Sub Command1_Click()

Dim i As Long

For i = 1 To 1000

If isprime(i) Then

Print i

End If

Next i

End Sub

2.求最大公约数过程;

Function Max公约数(A As Long, B As Long) \'求出两个数的最大公约数 Dim X As Long, Y As Long, K As Long

X = IIf(A >= B, A, B) \'x存入最大值

Y = IIf(A

Do \'辗转相除法

K = X Mod Y: If K = 0 Then Exit Do

X = Y: Y = K

Loop

Max公约数 = Y

End Function

3.冒泡排序过程

Private Sub Command1_Click()

Dim a(9) As Integer

Dim i As Integer

For i = 0 To 9

a(i) = InputBox(\"输入整数\")

Next

Sort a

For i = 0 To 9

Print a(i)

Next

End Sub

Private Sub Sort(ByRef a() As Integer) Dim i As Integer

Dim j As Integer

Dim t As Integer

For i = LBound(a) + 1 To UBound(a) For j = UBound(a) To i Step -1

If a(j1)

a(j - 1) = a(j)

a(j) = t

End If

Next

Next

End Sub

4顺序查找过程

Private Sub Command1_Click()

Dim i, j, t, a(1 To 10)

Randomize

Print \"原数组:\"

For i = 1 To 10

a(i) = Rnd * 10

Print \"a(\" & i & \") =\" & a(i) & Space(2), If i Mod 2 = 0 Then Print

Next i

Print

For i = 1 To 9

For j = i + 1 To 10

If a(j)

t = a(i) a(i

第17篇:VB关键字

VB关键字总结

1.编译命令关键字总结

作用 关键字 定义编译常数。 #Const 编译程序码中的选择区块。 #If...Then...#Else

2.变量与常数关键字总结

作用 指定值。 Let 声明变量或常数。 Const, Dim, Private, 声明模块为私有。 Option Private Module 判断 VariantIsError, IsMiing, IsNull, IsNumeric, IsObject, TypeName, VarType 引用当前对象。 Me 变量须明确声明。 Option Explicit 设置缺省数据类型。 Deftype

3.运算符关键字总结

作用 算术。 ^, -, *, /, \\, Mod, +, & 比较。 =, , , =, Like, Is 逻辑运算。 Not, And, Or, Xor, Eqv, Imp

4.错误关键字总结

作用 产生运行时错误。 Clear, Error, Raise 取得错误信息。 Error 提供错误信息。 Err 返回 Error 变体。 CVErr 运行时的错误处理。 On Error, Resume 类型确认。 IsError

关键字 Public, New, Static 。 IsArray, IsDate, IsEmpty, 关键字

关键字

1 5.Collection 对象关键字总结

作用 关键字 建立一个 Collection 对象。 Collection 添加对象到集合对象中。 Add 从集合对象中删除对象。 Remove 引用集合对象中的项。 Item

6.金融关键字总结

作用 计算折旧率。 DDB, SLN, SYD 计算未来值。 FV 计算利率。 Rate 计算本质利率。 IRR, MIRR 计算期数。 NPer 计算支付。 IPmt, Pmt, PPmt 计算当前净值。 NPV, PV

7.控制流关键字总结

作用 分支。 GoSub...Return, GoTo, On Error, On...GoSub, On...GoTo 退出或暂停程序。 DoEvents, End, Exit, Stop 循环。 Do...Loop For...Next, For Each...Next, While...Wend, With 判断。 Choose, If...Then...Else, Select Case, Switch 使用过程。 Call, Let, Property Set, Sub

8.目录和文件关键字总结

作用 改变目录或文件夹。 ChDir 改变磁盘。 ChDrive 复制文件。 FileCopy 新建目录或文件夹。 MkDir 删除目录或文件夹。 RmDir 重新命名文件、目录或文件夹。 Name

关键字

关键字

Function, Property Get, Property 关键字 2 返回当前路径。 CurDir 返回文件的日期、时间。 FileDateTime 返回文件、目录及标签属性。 GetAttr 返回文件长度。 FileLen 返回文件名或磁盘标签。 Dir 设置有关文件属性的信息。 SetAttr

9.日期与时间关键字总结

作用 关键字

设置当前日期或时间。 Date ,Now, Time 计算日期。 DateAdd, DateDiff, DatePart 返回日期。 DateSerial, DateValue 返回时间。 TimeSerial, TimeValue 设置日期或时间。 Date, Time 计时。 Timer

10.输入与输出关键字总结

作用 关键字 访问或创建文件。 Open 关闭文件。 Close, Reset 控制输出外观。 Format, Print, Print #, Spc, Tab, Width # 复制文件。 FileCopy 取得文件相关信息。 EOF, FileAttr, FileDateTime, FileLen, FreeFile, GetAttr, Loc, LOF, Seek 文件管理。 Dir, Kill, Lock, Unlock, Name 从文件读入。 Get, Input, Input #, Line Input # 返回文件长度。 FileLen 设置或取得文件属性。 FileAttr, GetAttr, SetAttr 设置文件读写位置。 Seek 写入文件。 Print #, Put, Write #

11.数据类型关键字总结

作用 关键字

数据类型变换。 CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CSng, CStr, CVar, CVErr, Fix, Int

3 设置数据类型。 Boolean, Byte, Currency, Date, Double, Integer, Long, Object, Single, String, Variant (default) 检查数据类型。 IsArray, IsDate, IsEmpty, IsError, IsMiing, IsNull, IsNumeric, IsObject

12.数学关键字总结

作用 关键字

三角函数。 Atn, Cos, Sin, Tan 一般计算。 Exp, Log, Sqr 产生随机数。 Randomize, Rnd 取得绝对值。 Abs 取得表达式的正负号。数值变换。 Fix, Int

13.数组关键字总结

作用 确认一个数组。 IsArray 建立一个数组。 Array 改变缺省最小值。 Option Base 声明及初始化数组。 Dim, Private, Public, ReDim, Static 判断数组下标极限值。重新初始化一个数组。

14.注册关键字总结

作用 删除程序设置。 DeleteSetting 读入程序设置。 GetSetting, GetAllSettings 保存程序设置。 SaveSetting

15.变换关键字总结

作用 ANSI 值变换为字符串。大小写变换。 Format, LCase, UCase 日期变换为数字串。 DateSerial, DateValue 数字进制变换。 Hex, Oct 数值变换为字符串。 Format, Str

关键字 关键字

关键字 4 Sgn LBound, UBound Erase, ReDim Chr 数据类型变换。 CBool, CByte, CCur, CDate, CDbl, CDec, CInt, CLng, CSng, CStr, CVar, CVErr, Fix, Int 日期变换。 Day, Month, Weekday, Year 时间变换。 Hour, Minute, Second 字符串变换为 ASCII 值。 Asc 字符串变换为数值。 Val 时间变换为数字串。 TimeSerial, TimeValue

16.字符串处理关键字总结

作用 比较两个字符串。 StrComp 变换字符串。 StrConv 大小写变换。 Format, LCase, UCase 建立重复字符的字符串。 Space, String 计算字符串长度。 Len 设置字符串格式。 Format 重排字符串。 LSet, RSet 处理字符串。 InStr, Left, LTrim, Mid, Right, RTrim, Trim 设置字符串比较规则。 Option Compare 运用 ASCII 与 ANSI 值。 Asc, Chr

17.其他关键字总结

作用 处理搁置事件。 DoEvents 运行其他程序。 AppActivate, Shell 发送按键信息给其他应用程序。发出警告声。 Beep 系统。 Environ 提供命令行字符串。 Command Macintosh。 MacID, MacScript 自动。 CreateObject, GetObject 色彩。 QBColor, RGB 关键字 关键字

SendKeys

第18篇:VB心得

VB心得

这学期选修了VB这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。

在日常生活中我们经常会有这样的体会,就是去做自己感兴趣的事情时,时间好像一直不够用,而从事自己不喜欢干的事情时候,好像度日如年一般。我刚接触VB是第一次上选修课,老师给我们讲课,我们一人一台机对着电脑屏幕看老师的课件,上面全是VB的专有名词,一个都不懂,老师叫我们实操,我对着VB软件系统无从下手。之后就去图书馆查阅了有关VB教程的书,决心自学。但每次看到一行行枯燥的程序代码眼皮不自觉地就要打架。后来几乎是\"头悬梁,锥刺股\"才得入门。现在想来,这种入门大可不必。严谨求实的态度是非常正确的,但既然面对初学者,也许换一种思路更贴切。少一些隐晦,多一些直观;少一些专业术语,多一些例子。

慢慢地,我了解到VB的特点,VB是在原来的Basic语言基础上发展而来的.Visual指的是可视的图形用户界面开发方法.不需编写大量代码去描述界面元素的外观和位置,只要把预先建立的对象添加到屏幕上的某点即可.如果使用者诸多PAINT之类的绘图程序,则实际上已经掌握了创建用户界面的必要技巧.BASIC指的是B语言,一种在计算机技术发展历史上应用得最为广泛的语言之一.VB在原来BASIC语言的基础上进一步发展至今包含了数百条语句,函数及关键词,其中很多和WINDOWS GUI有直接关系,VB不仅是可视语言,而且是面向对象的编程语言.其特点是概念多,实践性强,涉及面广.之后,了解到一些基本的概念,含义.例如类,就是创建对象实例的模板包含了创建的属性描述和行为特征的定义.而此中的对象又是类的一个实例,继承了类的属性,方法,而VB中长用的对象有窗体,控件等.但我们在建立之前必须清楚对象的三要素:属性,方法和事件.而建立程序的步骤大致可分为:(1)启动程序,装载和显示窗体.(2)窗体等待事件的发生.(3)事件发生时,执行对应的事件发生过程.(4)再重复的过程。(5)最后直接遇到\"END\"结束语句结束程序的运行或按\"结束\"强行停止程序的运行.再用VB创建一个应用程序,第一步骤是创建窗体,它是用户与应用程序进行交互操作的可视部分,窗体是创建界面的基本构造模块,也是创建应用程序所使用的对象.而后必要设置窗体的属性,从而构出窗体的外观,设置好的窗体,窗体就作为对象,能够对其定义的事件作出响应,这也是所谓的窗体事件,而窗体事件又包括窗体本身事件,键盘事件和鼠标事件.在了解窗体基本知识就还应了解VB的语言基础,其中包括了代码模块(窗体模块,标准模块,类模块),注释,分行和续行,数据类节(字节型,逻辑型,数值型,日期型),变量与常数,运算符与表达式,数组,控制结构,子过程和函数.同时,为了编程,我们还应培养良好的编程习惯,首先是对象,变量及过程的命名约定,然结构化编码约定.学习VB程序设计后,增加对此的认识,深入学习VB程序就可掌握新的软件,新的编程环境,学习此课程,让我学会使用开发环境,开发工具的方法,并锻炼我的意志,令我多一门技术。总而言之,这学期的VB课程让我收获了很多,为我下学期的计算机2级考试打下了基础。

第19篇:VB论文

学生姓名 :曹超

班 级 :1226001 学 号 :201220600107 专 业 :采矿工程

日期: 2014 年 12 月 18 日

学习VB的心得体会

这学期选修了VB这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的计算机2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。

一、Visual Basic 简介

Visual Basic 是Microsoft 公司开发的Windows 应用程序开发工具,Visual ——\"可视化的\",是一种开发图形户界面(GUI)的方法,使得非计算机专业的人也可以开发出专业的Windows软件。Visual Basic继承了BASIC语言简单易学的优点,又增加了许多新的功能,它采用面向对象与事件驱动的程序设计思想,使编程变得更加方便、快捷,使用Visual Basic既可以开发个人或小组使用的小型工具,又可以开发多媒体软件,数据库应用程序,网络应用程序等大型软件,是国内外最流行的程序设计语言之一。英文Visual的意思是\"视觉的\",\"可视的Baisc\"这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做\"可视\",你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。 在VB中入了控件的概念,在Windows中控件的身影无处不在,如按钮、文本框等。VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法,能够响应用户操作(事件)。 这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了。这些在以前的编程语言下是要经过相当复杂的工作的。

可视化设计:Visual Basic为用户提供大量的界面元素(在Visual Basic中称为控件对象),例如 \"窗体\"、\"菜单\"、\"命令按钮\"、\"工具按钮\"、\"检查框\"等等。用户只需要利用鼠标,键盘把这些控件对象拖动到适当的位置,设置它们的大小,形状,属性等,就可以设计出所需的应用程序界面。

事件驱动编程:Windows操作系统出现以来,图形化的用户界面和多任务多进程的应用程序要求程序设计不能是单一性的,在使用Visual Basic设计应用程序时,必须首先确定应用程序如何同用户进行交互。(例如发生鼠标单击,键盘输入等事件时,用户必须编写代码控制这些事件的响应方法)这就是所谓的事件驱动编程。

程序设计方法概述

1、初期的程序设计

高运行效率,少占用内存为目标

2、结构化程序设计

程序的可读性,可维护性为目标

程序=算法+数据结构+计算机语言+面向过程的程序设计方法

3、面向对象的程序设计(OOP)

降低程序的复杂性,提高软件的开法效率和改善工作界面为目标

程序=对象+消息+面向对象的程序设计

Visual Basic 特点

1、具有面向对象的可视化设计工具

2、事件驱动的编程机制

3、结构化的程序设计语言

4、提供了易学易用的应用程序集成开发环境

5、支持多种数据库系统的访问

6、高度可移植化的代码

7、VB6.0在开发环境上,网络功能等的大大增强。

二、对VB的理解

(1)VB不只是数据库和报表。不要以为VB就是数据库和报表,这只是VB强大功能的一小部份。如果这此都搞不清,还是好好的看一下相关的书籍,比在这里问问题有用多了。我以前没有学过数据库,只是有些编程的思路,后来学数据库就非常容易了。我做报表一般用RichTextBox或是From来做,一般都能做的很好,也不用去考虑什么水晶报表了。

(2)不要迷信于API。API能做很多东西,但有些东西在VB里面的函数中就有,API只是VB对WindowsSDK的封装而已。如果想学好API,建议学习SDK。如果VB本身就能很好的支持这个功能,何必还要用API呢。

(3)不要什么都想着控件。如果做程序都想着第三方控件的话,代价是很高的,不仅程序大,安全性也低了很多。其实VB本身带的控件已经完全够用了。

(4)认认真真的把MSDN中关于VB的内容好好看一看,特别是函数和语句,很有用的。

(5)遇到问题不要直接来这里问,自己好好想一想,试着解决这个问题,这虽然在时间上慢了,可是在自身的提高上却有很大的帮助。

(6)没事的时候,多研究些语言上的东西,如数据结构和算法,不要老是想着什么花哨的东西。这对以后的提高非常有帮助。 如何学好VB程序设计

1、学习程序设计的基本要求

2、VB的功能及特点

3、学习VB程序设计的方法

对学习者知识的要求:

首先,学习程序设计要具备一定的数学基础,计算机与数学有很大的联系,综观计算机历史,计算机的数学模型(图灵机,由Alan Turing提出)和体系结构(由John Von Neuman提出)等都是由数学家提出的。因此,要学习好计算机就要有一定的数学基础,不过对于初学者来说,在数学基础方面的要求并不是很高,从我个人的角度来看,有高中数学水平就差不多了。

其次,学习程序设计要有一定的逻辑思维能力,逻辑思维需要长时间的锻炼,如果你觉得自己在逻辑思维能力上有不足,也没有关系,因为编写程序本身也是对逻辑思维的锻炼,初学程序设计应具备的逻辑基础可以从高中数学中学到。

学习程序设计基本要求:

熟悉Visual Basic操作环境与设计工具,能设计应用程序界面。 掌握,理解面向对象程序设计基本概念。

掌握VB语言的基础知识,程序设计的方法。

能阅读一般难的程序;

能应用编写一些简单程序;

具有用Visual Basic开发Windows环境下应用程序的能力和阅读分析一般难度的VB程序的能力。

面向对象的程序设计具有如下的优点:

1、符合人们习惯的思维方法,便于分解大型的复杂多变的问题。由于对象对应于现实世界中的实体,因而可以很自然地按照现实世界中处理实体的方法来处理对象,软件开发者可以很方便地与问题提出者进行沟通和交流。

2、易于软件的维护和功能的增减,对象的封装性及对象之间的松散组合,都给软件的修改和维护带来了方便。

3、可重用性好。重复使用一个类(类是对象的定义,对象是类的实例化),可以比较方便地构造出软件系统,加上继承的方式,极大地提高了软件开发的效率。

4、与可视化技术相结合,改善了工作界面。随着基于图形界面操作系统的流行,面向对象的程序设计方法也将深入人心,它与可视化技术相结合,使人机界面进入GUI时代。

三、学习VB程序设计的方法

(1)保持良好的学习心态

1、要有自信,自强,积极主动学习.

2、克服畏难情绪,树立学好程序设计的信心 (2)要有良好的学习习惯

1、课前预习,认真听课并适当做些笔记,课后要认真复习消化所学内容,完成作业.

2、VB程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成.(3)学习程序设计要注重理解一些重要的概念.

VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在 程序入门阶段还是应该重视概念的学习.(4)自己动手编写程序

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力.(5)阅读,借签别人设计的好程序

多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能 则可以学到别人优秀的东西,帮助自己 提高自身水平.(6) VB程序设计学习的重点

1、程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的.

2、只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容.等你在编写大量程序之后,我想过二级肯定没问题,不过能不能做到真知灼见,运用自如我就不敢说了.

3、动手能力的培养是这门课和以往课程最大的不同之处.重点放在思路,算法,编程构思和程序实现上.语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用.(7)上机调试程序应注意的几点:

1、上机前应认真把实验题在用纸上做一做(包括窗体界面设计,事件代码的编写等)

2、每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学.

3、平时应多抽课余时间多上机调试程序.注意系统的提示信息,遇到问题多问几次为什么.(8)养成良好的编程习惯

1、程序构思要有说明;

2、学会如何调试程序;

3、对运行结果要做正确与否的分析.

四、学习VB的意义

1、充实生活。业余时间到处游手好闲的身影不见了,没事我肯定一动不动的坐在电脑面前摆弄VB。是啊,想想以前,真是一无是处,不是打游戏,就是看小说。现在生活有了寄托,是VB给了我无穷的快乐,让我乐此不疲。

2、武装头脑。VB是一门计算机编程语言,也算是一项知识含量较高的东西吧。VB语言容易上手,采用的是可视化程序设计。通过学习VB,扩展了自己的视野,让自己的知识得到了增加。

3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。越是这样越不要灰心,应该放松心态,一点一滴的去查。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。

4、获得成就感。经过学习VB,我编写了一些小程序,例如计算器,贪吃蛇等。每当调试成功的时候,感到特别兴奋,成就感十足。

五、小结

通过选修课的学习,对了VB这种高级语言有了进一步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,同时我经常看同学设计好的程序代码,包括教材上的例题程序,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的VB课程让我收获了很多,使我对计算机2级考试有了信心。

第20篇:VB学习心得

VB学习心得

一、学习VB程序设计的方法

保持良好的学习心态

1、要有自信,自强,积极主动学习.

2、克服畏难情绪,树立学好程序设计的信心

要有良好的学习习惯

、课前预习,认真听课并适当做些笔记,课后要认真复习消化所学内容,完成作业.

2、VB程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成.

学习程序设计要注重理解一些重要的概念.

VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在程序入门阶段还是应该重视概念的学习.

自己动手编写程序

程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力.

阅读,借签别人设计的好程序

多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能则可以学到别人优秀的东西,帮助自己提高自身水平.

VB程序设计学习的重点

、程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的.

2、只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容.等你在编写大量程序之后,我想过二级肯定没问题,不过能不能做到真知灼见,运用自如我就不敢说了.

3、动手能力的培养是这门课和以往课程最大的不同之处.重点放在思路,算法,编程构思和程序实现上.语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用.

)上机调试程序应注意的几点:

1、上机前应认真把实验题在用纸上做一做

2、每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学.

3、平时应多抽课余时间多上机调试程序.注意系统的提示信息,遇到问题多问几次为什么.

养成良好的编程习惯

1、程序构思要有说明;

2、学会如何调试程序;

3、对运行结果要做正确与否的分析.

二、复习过程简单的说就是细看书,勤做题,最后练上机。

细看书,就是在考试前的一个月内,以看书为主,越细越好(如果你时间紧的话可只重点看些考点涉及的东西),把书上的知识点看懂看透,暂时不明白的或者不理解的先用笔记本记下。这样你的笔记本就有每章你不懂的知识点和题目了,之后可以问同学,问老师……如此反复,半个月下来你的笔试水平考试应该没问题了;下半个月的时间可以一边练习题目,一边练习上机。切不可前一段时间做题,后一段时间上机,那样的话会有很多忘记的知识点。

vb学习
《vb学习.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
相关专题
点击下载本文文档