版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB6.0程序设计教程赵艳第一章Visual
Basic
6.0概述1.1概述一、VB简介:VisualBeginner’sAll-purposeSymboliInstructionCode(可视化的初学者通用符号指令代码)包括学习版、专业版、企业版(最高版本)三种。二、VB功能特点:P41、具有面向对象的可视化设计工具。对象+属性+方法2、事件驱动的编程机制。3.提供了易学易用的应用程序集成开发环境。
4、结构化的程序设计语言。5.支持多种数据库系统的访问。
6、OLE技术。7、完备的帮助功能。开发环境上的改进。创建ActiveX控件。Internet的开发。新增1.2启动与退出一、启动:1、开始\程序\vb6.0\vb6.0程序2.双击快捷图标»新建:建立新工程。»现存:选择和打开现有的工程。»最新:列出最近使用过的工程。二、退出:1、文件\退出2.点击标题栏关闭按钮1.3集成开发环境
由标题栏、菜单栏、工具栏、窗体窗口、属性窗口、工程资源管理器窗口、代码窗口、立即窗口、窗体布局窗口、对象浏览器窗口、工具箱窗口组成。标题栏:vb有三种工作模式。 [设计模式]:进行界面的设计和代码的编制。[运行模式]:运行应用程序。[中断模式]:应用程序运行暂时中断,可编辑代码。工具栏:主窗口工具箱窗体窗口立即窗口工程窗口属性窗口窗体布局1.窗体窗口:是建立VB应用程序的主要部分,是应用程序界面的窗口。
2、属性窗口:列出了选定的窗体或控件的全部属性及其设置值。由对象列表框、属性显示排列方式、属性列表框几部分组成。3、工程资源管理器窗口:列出了当前工程中的窗体和模块。4、代码窗口:代码编写器,用于显示或编写代码。5.窗体布局窗口:6、对象浏览器窗口:1.4标准控件简介7、工具箱窗口:工具箱
中放置的是VB的标准控件。1.5使用帮助1、使用命令:[帮助]\[内容]或[索引]2、使用上下文相关的帮助:3、从internet上获得帮助。作业:P16,2、4、5.6程序设计方法的发展1、初期的程序设计:体现手工编制技巧的编制方法。2、结构化程序设计:模块化思想。分为顺序、选择和循环三种结构,采用自定而下、逐步求精的分析方法。3.面向对象的程序设计:将问题分解为对象。对象即为一个实体,有自己的属性,又有作用于数据的方法,将属性和方法封装成一个整
体,供程序设计者使用。
第二章简单的VB程序设计2.1对象的概念一、类和对象类:是一组具有相同特性物体的抽象化模型。对象是一个实例化的类,是一个基本运行时的实体,是数据与数据操作方式的综合,包括属性、方法、事件。可直接使用的对象包括:窗体:是构成程序与用户之间界面的基础,是一个包含有创建用户界面所需的其他对象以及应用程序代码的窗口。控件:放在窗体中的对象。标准控件、定制控件、可插入对象。系统资源:应用程序对象、剪贴板对象、屏幕对象、打印机对象等。
二、对象的建立和编辑1.建立:2(、1命)名将规鼠标则定:位在工具箱要制作控件对象的图标以上字,母单或击汉左字键开。头;最大长度255个字符;3.(对2)象将的鼠选标定移:到选窗定体一所个需对位象置,处按,住拖CT曳RL鼠键标。,可再包单含击字其母他、对汉象字。、数字和下划线。4注、意复:制窗或体删不除能对与象公:用遵对从象WI重ND名OW;S规范。注窗意体:之当间粘也贴不控能件重时名,。“是”则建立一个控件数组,“否”则复制一个标题相同而名称不同的控件。
三、对象的属性、事件和方法1、属性:是个别对象区别于其他对象的特征,是描述和反映对象特征的参数。决定了对象的外观和行为。如NAME、TOP、LEFT、WIDTH。设置属性方法:a:在设计阶段利用属性框设置对象属性。b:在程序代码中通过赋值实现。格式:对象名.属性名=属性值2.事件、事件过程:发生在对象上的事情——事件。事件过程:当一个对象的某个事件发生后,系统就做出相应的动作,该动作是由事件相应程序代码来决定的,这样的代码叫[事件过程]。
创建事件过程方法:打开
视图 | 代码
窗口菜单(1)选定响应事件的对象(2)从选中对象能检测到的事件列表中,选择所希望的事件。这样就得到一个事件过程的框架。如:subexitbutton-click()3.方法:en是d对su象b自身内部完成某一任务的一段代码,是一些特殊的过程和函数,它定义了怎样处理信息并完成规定的动作。对象调用格式:对象名.方法名[参数名表]如:form1.print“欢迎使用visualbasic6.0”form1.move0,0例2.1编写一个程序,单击按钮1,则文本框中显示“hellovb”,单击按钮2,清除文本框中内容。步骤:(1)建立用户界面的对象设置对象的属性对象事件过程的编程保存文件和运行程序保存文件:文件\form1另存为\.frm;文件\工程另存为\.vbp系统默认为VB目录。
2.2简单应用程序的建立一、生成可执行文件:步骤:选择菜单,文件\生成…exe文件键入文件名。二、制作安装盘:(安装向导制作过程)保存要制作的文件,退出vb6.0。开始\vb6.0\vb6.0中文版工具\package&deployment向导选定工程及选项对话框中选择工程文件名选择发行方法。
生成可执行文件和制作安装盘2.3工程管理和环境设置一、vb工程的结构:用户建立一个应用程序后,系统会根据应用程序的组成建立一系列文"的文件中。
件工,程这文些件文(件.v的bp有):关与信该息工都程保有存关在的一全个部"文工程件和对象的清单。工窗程体包文括件以(下.f文rm件):类包型含:窗工体程及文控件件、的窗属体性文件设置。、窗体的二进制数据文件、标准模块文件、类模标块准文模件块、文资件源:文包件含、类控型件、文常件量等、。变量、
外部过程和公共过程的声明和公共声明。
二、创建、打开和保存工程:[三文、件添]|加[新、建删工除程和];保[文存件文]|件[打:开工程]:[添文加件窗]|体[保:[存工程]]|[;添[工加程窗]体|[];另存为]添加模块:[工程]|[添加模块]删除窗体:[工程]|[删除窗体]删除模块:[工程]|[删除模块]保存文件:[文件]|[保存窗体](或模块)四、环境设置:[工具]|[选项]2.4基本的属性、事件和方法2一、、ca基pt本io属n属性性:设置窗体或控件的标题,显示在1、标N题am上e属。性:用来标示对象,不会显示在窗体对上象。名.caption=“标题字符串”;f代or码m1中.c访ap问ti对on象=“的m属y性fo和rm方”法的语法格式为:3、helight、wi对dt象h、名t.o属p、性名left:控件在窗体中的大小和位置。4、Font:改对变象文名本.的方外法观名。参Fo数nt表n表ame,Fontsize,Fontbold,Fontitalic,FontStrikethru,FontUnderline等。对象名.font.font对象属性名=属性值;5.enabled属性:窗体或控件对发生的动作是否做出反应6、Alignment:控件内的对齐方式。
7、visible:控件是否可见。
8、Forecolor前景颜色属性;Backcolor背景颜色属例2.2、例2.3.例2.49、picture:对象中显示的图像。设置方法0左有对以齐下,几1右种对:齐,2居中。
设计阶段从属性窗口通过LoadPicture对话框设置。True:程序运行时可见;false:不可见。设计阶段从剪贴板粘贴图形到对象上。
运行阶段用LoadPicture()函数装入,语法格式为:性。用代码设置语法格式为:对象名.Picture=LoadPicture("[d:][path][图形文件名]”)对象名.颜色属性名=十六进制颜色值10、Autosize:控件自动调整大小。对象名.颜色属性名=rgb(r,g,b)True自动调整大小;false保持原设计大小。
11、MousePointer、MouseIcon(鼠标指针属性):用于设置程序运行时,鼠标移到对象上后指针的形状。设置方法:使用属性窗口,修改MousePointer的值。其可取值及对应的指针形状见表2.6。用代码设置,语法格式为:
对象名.MousePointer=设置值对象名.MouseIcon=LoadPicture(光标文件名)/对象名.Picture12、TabIndex:按Tab键时,焦点在各个控件中的移动顺序。13.控件默认属性:可以直接改变控件的值,而不必指出是何属性。Text.text、label.caption二、基本事件事件是对象能识别的动作。
控件事件过程的语法格式为:Privatesub对象名_事件名([参数表])语句行Endsub窗体事件过程的一般语法格式为:Privatesubform_事件名([参数表])语句行Endsub单击和双击事件:
click、dblclick。单击某对象,引发click事件;双击某对象,引发、当一个对象失去焦点时,发生lostfoucs事件键盘事件: keypress、keydown、keyup:按下并释放一个ANSI键时发生Keypress事件,返回的dblc是li该c键k事所件对应。的ASCII值。•按焦下点或事释放件一个:键g时ot发f生ouKecysd、ownl、oksetyfupo事uc件s,。返回当一的个是对该象键接所对受应到的焦k点eyc时od,e键发代生码g。otfoucs事件;Keyascii:按键的ascii码;Keycode:按键的物的值为1\2\4。X,y:返回鼠标指针的坐标。鼠标理事码件。:键mousedokweny、comdoeuseukpe、yamsocuisiemove。Button:返回一个A值,用于&H标41示鼠标&的H4哪1一个键被按下。左、右、中键分别对应的值为1、2.4。
a &H41 &H61Shift:返回一个值,用于标示鼠标键时,是否同时按下shift、ctrl、a5lt键。S&hHi3f5t\ctr&lH\3a5lt键分别对应% &H35 &H25装载Load和卸载Unload事件:加载窗体时发生load事件;卸载窗体时发生unload事件。三、基本方法:格式:[对象名.]方法名[参数表]1.setfocus:调用一个对象的setfocus方法时,把焦点移到该对象上。语法格式:对象名.setfocus2.print方法:[对象名.]print
[{spc(n)
tab(n)}][表达式列表][;作用:在对象上输出信息。
对象:窗体、图形框、打印机,省略对象表示窗3.cls方法:格式:[对象.]cls4对4对、象m:o:ov窗e方体法、:图形框,对象省略表示窗体。
[作[作对用象:.清]除m除mo运ve行左时边窗距体离或[,图上形边框距中离显[,示宽的度文[,本高或度图]]形]对体象。象:窗体和除时钟、菜单外的所有控件。作S作pc用(n:)移:动各窗输体出或表控达件式,之并间并距可离改n变个大空小格。;(vb4-9)5Ta、b(hni)d:e、将s输ho出w方表法达:式定位在第n列。窗,体:体表名示.h光id标e;定位窗在体下名一、s个ho显w[示0/区1]的开始位置;;:表示光标定位在上一个显示的字符后。例shuchugeshi作业:p43,1、3、4、5.12第三章VB程序设计基础事3件.1过程程序:结只构存与在编于码窗规体则中:,没有返回值,用于响一应、用模户块的:系一统个事程件序。由格若式干:模块组成。
pr•i窗va体te模s块ub:f包or括m/窗控体件窗名口_事的件可名视(部[分参、数窗表体])二、模块中的代码:有两种形式。
声明:在模块级定义常量、变量、数据类型、w及in其…do中.w.s所.动有态控链件接的库属中性的设过置程说声明、等相。关的事En•件d过s程u程b:。具有一定功能的一段代码。通•用标过准程模:块可❏:存事包在件含于过着窗程为体、应模通用块用程、过序标程编准。写模的块一和般类过模块中程。、可函使数应子用过程序等完代成码特。定的任务。pu•b类li模c/块pr:iv包at括e]创[s建ta新ti对c]象su的b代过码程。名([参数表])…….[exitsub]Endsub三、编码规则:见例3.1。P46代码中不区分大小写。语句书写自由。多个语句之间用":”号分隔;单行语句可分若干行书写,在本行后加入"_”续行符。注释有利于程序的维护和调试。以Rem开头,或以"‘”开头。4.保留行号与标号。
3.2数据类型一、标准数据类型:1.数值数据类型:整形数:类型符%,存放较小的整数。
长整形:类型符&,存放较大的整数值。单精度:类型符!,只能精确到七位数。双精度:类型符#,16位精度。货币:类型符@2.字符数据类型:用引号括起来的一串字符即
为字符串常量。有变长字符串和定长字符串两种。如:dims1asstring,s2asstring*40计算。数据类型3.6、逻变辑体
:非可0数存转放换任为何T内ru部e的,数0转据换类为型Fa的ls数e据。,向可变数据类型赋值时,不必进行任4.何日转期换型,自数动据执类行型必:要任的何转字换面。上被认为日期和时间
的如字:符d,im用so#m括e起as来va,ri即an可t成为日期型。如:#Jan1,1993#。some=“24”当其他数据类型转换为日期型数据时,整数代表日期,小数s表om示e=时so间me。-5对于日期/时间也可以进行数字some="数字”&some5.如对果象想数知据道类变类量型的:内部表示形式可以用vartype函数来获取,
该函数使用方式为Vartype(变量名)。如:printvartype(some)二、自定义类型据类型。[private/public]Type自定义类型名元素名[(下标)]as类型名……把若如干:不Ty同pe类st型ut的yp变e量结合在一起作为一个数格式: iasintegername
as
string*20mark(1to4)assingleEnd
type元素名[(下标)]as类型名EndDtiympestudentasstutype元变素量名中:自的定某义个类元型素中的的表一示个方成法员:。类型变名量:名标.准元类素型名。如:student.mark(4)3.3常量、变量和函数一二、、常常量量:或12变3.量“的12命3”名、#规4/则12/:2002#以1、字用母户或声汉明字的开常头量;:最解大决长重度复2使55用个常字量符值的;问题。可[p包ub含li字c/p母ri、va汉te字]c、on数st字常和量下名划[a线s;类型]=表达式As类型:说明该常量的数据类型。不表能达式与:关数键值字常相量同、字;符不常区量分、大表小达式写。;可如加:前Co缀ns表tP明I=类3.型14。15如92:6strMyname、dtYearconstmaxasinteger=&H1442、系统提供的常量:系统提供了应用程序和控件的系统定义常量,系统常量位于对象库中。
三、变量声明:使用前先声明变量名及类型,以便系统为它分配存储单元。
注意:一条语句可以同时定义多个变量,但每个变量必须有自己的类型声明,类型声明不能共用。如:dimx,y,zasinteger则创建x、y变体,z整形。
1.用Dim语句声明变量:D2i.m用/pr类iv型at说e/明pub符li声c/明st变ati量c:变量名[as类型]如di:md变im量c名a类as型d符ouble,basintegerP如ri:vdaitme:c声a#明,b为%私有,只能在它所在的模块内被调3.用隐;式p声ub明li:c可未在进行应声用明程直序接的使任用,何则地为方va被ri调an用t。。SFtuantctiico用ns于af声es明qr过(n程um中)使用的变量为静态变量。tempval=abs(num)End
function ‘直接使用了tempval变量。四、标准内部函数:1.数学函数:Rnd‘产生一个0-1内的随机数例suijishuRandomize[number]‘初始化随机数发生器转换函数:VAL()、Chr$()、asc()。字符串操作函数:日期函数:格式输出函数:数值、字符、日期按指定的格式输出。如:Format$(表达式[,格式字符串])Format$(1234.567,"00000.0000")例:设计一个能做四则运算的运算器。(运算器)对象:文本框text1.text2输入数据;label1显示当前运算符,label2显示“=”,label3显示计算结果;加、
减、乘、除、清除、退出6个命令按钮。
122335+=3.4运算符和表达式关系运算符和逻辑运算符。•41.一关算、系术运运算算符符::^有、算–术、运*、算/符、、\、字符mo运d、算+符、、–2=.、字<>符、串>=运、算li符ke:(&相,+似。)、is(是否)字如符:串"比汉较字时”,按+照12从34左5到‘右依,次是取错两误个字的符串中的对应字符"的汉A字SCI”I码&进12行34比=较",汉对字应字12符34不”同时,结正束确比较,3其.A逻SC辑II运码的算大符小:关n系ot即、为a两nd字、符o串r、的x大o小r、关e系qv。、imp。如:”CAN”>”CASA”(false)A•结B果=NO对TA象A1AlNDikBe格A式ORBAXORBAIMPBAEQVB T(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T TT(比T较字F符串是T否是给定T的格式F)结果=对象1is对象2T F F F T T(对象1和对象2是否指向同一个对象)二、表达式:用运算符把常量、变量、函数连接起来的式子。
1.书写规则:乘号不能省略。括号必须成对出现,且都用圆括号。表达式从左到右在同一基准上写,无高低、大小之分。2.不同数据类型的转换:integer<long<single<double<currency3.运算优先级:(括号最优先)算术运算符>=字符运算符>关系运算符>逻辑运算符数组是具有相同类型的数据的有序集合,组内每一个元素为一个下标变量。3.5
数组.一、问题的提出:解决数据量大、内存有限的情况。
B11B12B13…B1NB(1,1)B(1,2)B(1,3)…B(1,N)B21B22B23...
B2NB(2,1)B(2,2)B(2,3)…B(2,N)...=B.=B.BN1BN2BN3…
BNN.B(N,1)B(N,2)B(N,3)…B(N,N)一维数组的存储结构:存储结构和逻辑结构相一致。如A(5)数组A(0),A(1),A(2),A(3),A(4),A(5)多维数组的存储结构:各元素存储顺序为按行优先,一行排列完后再排下一行。如B(3,3)数组:B(0,0)B(0,1)B(0,2)B(0,3)B(1,0)B(1,1)B(1,2)B(1,3)B(2,0)B(2,1)B(2,2)B(2,3)B(3,0)B(3,1)B(3,2)B(3,3)1.静态数组:在整个程序执行过程中,大小大小.2.动态数组不发:生与变上化相的反数,组在。程序中用到数组时,才1给.一它维分数配组存:储空间,可随时用redim重新指出数组D大im小/p。ublic/private数组名(下标to)上方界法[a:s先类使型用]Dim,private或public语句声明括号2内.二为维空数的组数:组,然后用redim语句声明该数组的Dim/public/private数组名(下标1[,下标re2d…im][数as组类名型(]下标1[,下标2…])注如意::1d、im静a态(2数3)组as声s明tr中in的g下标只能是常量,而动态数组d中im的h下(0标to可3以,2是to常9)量a或sl变on量g。2.可多次使用Redim语句;可加Preserve语句用来保留数组的数据。
1.数组元素初始化:ForI=1to8a(I)=0nextP2r.i数va组te的Su输bF入or。m_Click()DFiomraI(=)1:toa3=Array(1,2,3,4,5,6)Forij=10tToo45PAr(iIn,taj()i)=i‘ntap(u0t)(~a“(5输)入”&I&j&“的值”N)extNEenxdtSjubNexti二、控件数组概念:是同种控件的集合,共用一个控件名,共享同一个事件过程,通过index来区别各元素。建立:设计时建立:在窗体上画出控件,进行属性设置,选中控件进行赋值和粘贴,进行事件过程的编程。运行时添加控件数组:在窗体上画出控件,进行index设置,编程时通过load方法添加其余的元素,通过left、top属性确定其在窗体中的位置,将visible属性设置为true。例3.13程序设计方法的发展1、初期的程序设计:体现手工编制技巧的编制方法。2、结构化程序设计:模块化思想。分为顺序、选择和循环三种结构,采用自上而下、逐步求精的分析方法。3.面向对象的程序设计:将问题分解为对象。对象即为一个实体,有自己的属性,又有作用于数据的方法,将属性和方法封装成一个整体,供程序设计者使用。
第4章vb语言基础4.1结构化程序设计:1、算法及其表示:定义:是数值计算和非数值计算过程中的方法和步骤,分为数值算法和非数值算法两种。如珠算口诀是数值算法;而组装机器,一道道工序是非数值算法。2.流程图的概念:是由一些几何框图、流线和必要的文字说明构成的框图。其框式、意义及长度比例都有国家标准。例4.1起始、结束框处理框输入/输出判断框2.结构化程序设计:1)顺序结构:是沿一个方向进行的,没有分支,是最简单的一种。
2)选择结构:出现两个或多个分支,根据一定的条件选择其中之一。
顺序其结他构辅助控制语句:选择结构条件?循环体NY当型循环循环体条件?YN直到型循环3)循环结构:按照一定的条件重复执行一段程序。有当型循环和直到型循环两种结构。4.2顺序结构一、赋值语句:格式: [LET]变量名=表达式如:iA.text="姓名” :left=300注意:"=”左右两边类型要一致。表达式可以是常量、变量、函数或表达式4.3选择结构一、二分支结构:1.if条件then语句块1else语句块2end
if2.if条件then语句块end
if注意:条件为关系表达式或逻辑表达式必须以Endif结束各语句块应缩格书写,体现层次关系。
If
then
[else]二、多分支结构:1.if条件1
then语句块1elseif条件2
then语句块2…..else语句块n+1end
if2.if语句的嵌套:if表达式1
thenif表达式2
thenelseend
ifelseend
if例4.43.多分支的selectcase结构:select
case变量或表达式
case表达式1语句块case表达式2….case
else语句块n+1endselect例:输入三个数,按从大到小进行排序。要求对文本框中的数据有测试,输入为非数字时提示(实验2-1)。
Case
3Case
1
to
10case
2,4,6,5
,is>10nna<b?ya、b交换A<c?yA.c交换B<c?B.c交换输出数据ny输入数据数值?y排序n对象设置:3个文本框输入、1个图片框输出、1个命令按钮排序。对文本框中的数据进行测试采用Lostfocus有何不妥?在这里采用3个keypress事件,对3个文本框进行测试,非数字字符时,清除原数据,该文本框重新获得焦点。Keyascii=13回车,则证明数据输入完毕。
例:对输入的字符进行转换,大写变为小写,小写变为大写,空格不转换,其余转换为"*”。(Vb2-1)算法:yyy大写变小写小写变大写不转换大写?n小写?n空格?n转换为*转换后的内容连接四、循环结构一、 FOR 循环语句:For循环是循环次数已知的循环。FOR循环变量=初值TO终值[STEP步长值]语句块[exit
for]
循环体语句块NEXT循环变量循环体是位于for-next语句之间的部分,是多次重复执行的动作。
语句块循环变量加一步长语句块Exit
for循环变量在终值内?循环变量获得初值nNext后跟语句y例4.7:分析:ascii编码值为32-126,通过chr$()函数将编码值转换成对应的字符,tab(7*I+2)让每项占7列。例4.8:用print方法输出下列图形:vb3-22该图形分为上下两部分,上部6行,下部5行。在打印每一行时需要定义首位置及字符个数。
语句块语句块LOOP
{WHILE
UNTIL}<条件>当I<=100为true时,执行循环。二、do-loop循环: do循环适合循环次数未知的循环。1.3如D.O:d{oWuHnItLiElI>U1N0T0IL}<条件>1、语sd=o句sw+块hIi:leII=<I=+100[exitdo]语lo句ops块=s+I:I=I+14L、OOdlPoop2.2D.Odso=s+I:i=I+1loosp=su+nIt:ilI>=1I0+01[exitdo]当I>l1o0o0p为whtirlue时I<,=不10执0
行循环。三、循环的嵌套1、FOR循环:FOR循环变量1=初值1TO终值1STEP步长1…..FOR循环变量2=初值2TO终值2STEP步长2循环体NEXT循环变量2注意…:..(1)内循环与外循环变量不能同名。NEXT(循2环)变内量循1环与外循环不能交叉。2.DO(循3)环与:idfo-endif语句配合时,不能从循环体外跳到体内,也不do能从外循环转到内循环。例4.12四、其他辅助语句lo:opgoto{标号行号}loopend例4.13例:e=1+1/1!+1/2!+1/3!+…+1/n!+…分析:e=e+t,t=1/n!,n!=1*2*...*n=(n-1)!*n,定义n!-〉p,所以p=p*I,i值从0到n不断增长。回顾:实验1-2、1-3.2-1、2-2、2-3。
yFor
m=2
to
100For
I=2
to
m-1m能被I整除吗?nNext
iNext
m第5章过程有系统提供的内部函数过程和事件过程、用户定义的过程一两、种过。程的定义:1.利用工具\添加过程。
自定义的过程有:以2s.u利b、用f代unc码ti窗on口、直pro接pe建rt立y、。event四种保•留自字定开义始的子过过程程。的格式:自定义函数过程的格式:[static][public
private]]function函数过程名[(参数列表)][s[t
atsic类][型pu]blic
private]]sub子过程名[(参数列表)]局部变量或常数定义语句函数名=返回值[exitfsunbc]tion]语句参数列表:[byval]变量名[()][as类型]有:传值无:传址():形参列表,函数后不能省略enedndfusnucbtion二、过程的调用:1.子过程的调用:子过程名[参数列表]
或call子过程名(参数列表)y=2x+3SUBTESTSUB (L,M,N, X$)2过.函程数调过用程的调用:C变AL量L名TE=S函TS数UB过(程A名,(B[参,C数,列表“]T)EST”)注意:过程定义(1)实参与形参保持个数相同,位置与类型一一对.应实。参与虚参一一对应,进行虚实结合.(执2)行调调用用是的把子实程参序值传给形参称为参数传递。.(返3)回参调数用是程数序组,时并,实把参虚与参形的参值在传参送数给声实明参时,接可着以执行C省AL略L的维后数续。语句。
三、参数传递:1.传址与传值:实参和虚参之间如何按地址传送?即:在调用过程时,将实参所用存储单元的地址传送给过程的形参。使实参、形参共有一个地址,实现参数的传递。
虚参A
b
c
d实参和虚参之间如何按数值传送?在调用过程时,将实参的值复地制址给形参,实参与形参断开了联系实,参然后在形参的存储单元中操作,调用结束,形参所占用的存储单元也同时释放。由于过程中没有访问原始变量的地址,因而若过程修改了形参的值,则返给实参的值也不会改变。注意:传址方式时,实参不能是表达式、常数,只能是变量。
2.数组参数的传递:一般通过传址方式传递。注意:在实参形参为数组时,可省略维数,但还要写圆括号。如果被调过程不知道实参数组的上下界,可用lbound、ubound函数确定。Lboundubound(数组名[,维数])如:lbound(a,3)guochengliangfangfa求:1+x+x2/2!+….+xn/n!,精度为xn/n!<eps(例3.15)(例3.19)体会一下static四、变量、过程的作用域:即变量、过程可被访问的范围。1.过程的作用域:(1)窗体/模块级:privatesubmysub()(在2)某全个局窗级体:或pu标bl准ic模s块ub内my定su义b(的)过程,定义子过程2在.或窗变函体量数或的过标作程准用前模域加块:p中决ri定va义哪te的些关过子键程过字,程,和过函程数只过能程被可本窗其访体默问或认该本是变模全量块.局中的的,过也程可调加用pu。blic(说1)明局。部可变供量该:应在用过程程序内的用所d有im窗语句声明的变量,体只和能所在有本标过准程模中块使中用的,过别程的调过用程。不可访问。
3.静态变量:static变量名[as类型]每次调用过程时,变量保持原来的(2)窗体/模块级变量:在一个窗体/模块的任何过程st外at,ic用fudnicmt语io句n或函用数p名ri(v[a参te数语列句表声]明)[的as变类量型,]可st被at本ic窗su体b模过块程的名任[(何参过数程列访表问)]。(表3示)该函全数、局过程变内的局量部变:量都是在静态"变量通用声明”段,用public语句声明的变量,可适合整个应用程序的变量。
五、递归:用自身结构来描述自身。N!=n*(n-1)!例:有五个人在一起,现在我们想知道第五个人的年龄。
③说:比第二个人大2岁②说:比第一个人大2岁说:比第四个人大2岁④说:比第三个人大2岁②①
③40
(n=1)①公说式:表他示4如0岁下:询问过程: ④
③
②
①--递推age(n)=age(n-1)+④2(n>1)求注解:过递程归:过①程不②能③无限④进行-,-回必归须要有一个结束递归的条件,如本题的age(1)=40。
Public
function
age(n
as
integer)as
integerIF
n=1
THENage=40ELSEage=age(n-1)+2END
IFEND
FUNCTIONPrivate sub command1_click()①P主RI程NT序只“有AG一E(条5语)=句“,;求ag解e(完5全)靠age(n)子程序。E②E②N过D程su中b,age共被调用5次,age(5),age(4),age(3),age(2),age(1),其中age(5)是主程序调用的,其它是在过程本身中调用的(共4次)注:在某一次调用时,并不会立即得到age的值,只有递推调用到age(1)时,才有确定的值,然后再回归到age(5),得到最后结果。例5.3构成递归的条件:递归结束条件及结束时的值。能用递归形式表示,并且递归向终止条件发展。5.3常用算法举例一、用筛选法求素数:例3.23算法:1.从2开始,把数列中2的倍数划去;从3开始,把3的倍数划去;跳过已划去的数,把5的倍数划去;直到数列最大数max的sqr(max)为止。
用一个一维数组作为筛子,数组元素的下标与数列的整数对应,数组中全部元素预先置1,在进行筛选时,把要划去的数即其下标对应的元素置为0。
Prime数组全部置1,p=2读入max,求出sqr(max)e当p<sqr(max)Then
Prime(p)=1
elsFor
k
=
J
To
max
Step
PPrime(k)=0nextP=p+1二、
数值转换:例3.24算法:一个十进制数m转换成r进制数,
将m不断除r取余数,直到商为0,反序即为结果。
Idec0存放十进制数m;ibase0存放r进制数;Idecr()存放不断除的余数;下标与除的次数对应。三、加密与解密:例3.25算法:将每一字母加以序数,如序数为2A
B
C
D
E
F G
H I
….X
YA
B
C
D E
F
G….Z
A B
CX
Y Z
A四、排序:例5.8选五选五择、择、法查法查:找:找a:a:(例1例1)5a.a.(1(12121) a(3) a(4) a(5) a(6) a(7)1合1合、并顺排序查:找:根据查找的关键字与数组中的元
素算逐法个:比1.较在,数相组同a,、找b到中;各找取不第到一,个查元找素失进败行。2比、较二,分将法小查的找元:素放入数组c中。2算、法取:小要的查元找素的所关在键数字组同的数下组一的个中元间素项与元上素一比较
次,比若较相后同较则大查的找元成素功比结较束,;重否复则上判述别比关较键过字程落,在直数到组某的一那个半数部组分先,排然完后;保留一半,舍弃另一半。3如、此将重另复一,个直数到组找剩到余或元数素组抄中入没数有组这c样,的排元序素完。成。
六、高次方程求根:算法:方程f(x)=0的根就是f(x)与x轴的焦点x*,用求导的方法,从x0开始,使方程的根逐渐逼近x*。步骤如下:(1)求f(x)在x0处切线斜率f`(x0)=f(x0)/(x0-x1)x1为f`(x0)与x轴交点,达到要求,即为所求。则建立迭代公式:x1=x0-f(x0)/f`(x0)(2)判断条件:x1-x0< 是否满足,直到满足为止七、字符处理应用:例3.31X0X1第6章窗体设计一、窗体设计:1.基本属性:name、height、caption、width、left、top、font、enabled、visible、forecolor等Scalemode:设置窗口坐标的度量单位。 Scaleheight、scalewidth:决定窗口用户区的高度和宽度。maxbutton和minbutton:maxbutton为true,窗体右上角有最大化按钮。minbutton为true,窗体右上角有最小化按钮。controlbox:窗体标题栏是否有控制菜单。windowstate:窗体启动时的可见状态。
2.窗体的主要事件:3.窗有c体li的ck设、d计bl:click、load、gotfocus等事包件括,窗在体发的生控lo制ad菜事单件、时窗还体同的时背伴景随和着窗许体多
的事输件出发(生fo。rmat,currentx,currenty)。例6.1二窗、体多的重方窗法体有:print,cls,move。1、多重窗体的管理:添加窗体、删除窗体和保存窗体。2、设置启动窗体:系统默认第一个建立的窗体为启动窗体。也可以通过[工程]\[工程名属性]来设置。
三、窗体处理:1、load方法:把一个窗体装入内存。格式:load窗体名称2、unload方法:
从内存删除一个窗体。格式:unload窗体名称3、show方法:显示一个窗体。格式:[窗体名称.]show[模式]模式有0、1两个值4.hide方法:将窗体隐藏起来,并不从内存中删除。格式:[窗体名称.]hide例4.18、例6.2第7章标准控件的使用一、命令按钮、图片框和图像框:1.命令按钮:属性:defaultcancelstylepicturedisablepicturedownp事件:click事件。
(1)鼠标单击;选中命令按钮的方法:
(2)Tab键将焦点移到相应按钮上,按回车键。(3)按快捷键。
2.图形框与图像框:Picture属性:设置显示的图形。在图形框中装入图片图形框对象.picture=loadpicture(图形文件)在图形框中删除图片:图形框对象.picture=loadpicture(“”)Autosize属性:(图像框无该属性)true—图形框能自动调整大小;false—图形框不能自动调整大小。Stretch属性:设置图像框中装入的图片是否自动调整大二、标签与文本框:1、标签:用来输出文本信息,但不能输入信息,因此该控件的内容只能用caption属性修改。属性:caption、alignment、backstyle、wordwrap事件:Click、Dblclick、Change。例:vb2-52.文本框:即编辑框。常用作输入、输出控件。属性:multiline、scrollbars、maxlength、locked、Sellength、Seltext。事件:Change、Keypress、Lostfocus。Cshealnsgtea:r用t:户选输定入的新正内文容开或始程位序置改。变了文Se本ll框en的gt属h:性选时定就的引正发文了长该度事。件。Seltext:选定的正文内容。
例2.8建立一个允许剪切、复制和粘贴的程序。(vb2-7)分析:有五个对象。一个文本框初态为空白,用于输入文本。有"剪切”、"复制”、"粘贴”、"退出”四个命令按钮,前三个以图形形式表示。
Asdfggghhjh选中内容清空插入选中内容选中内容保存cut
copy
pastePaste内容=插入点前面的内容+选中内容+插入点后面的内容变量选中内容三、框架、单选按钮与复选框:1、框架:基本属性
:name、width、height、top、left、font、backcolor、forecolor、index等。Caption属性:设置框架上的标题名称。事件:Click、dblclick。例4.22.单选按钮:Value属性:表示单选纽或检查框的状态。为true,则表示单选纽被选定;为false,单选纽未被选定,缺省设置。Alignment属性:0:控件纽在左边,标题右边,缺省设置。1:控件纽在右边,标题左边。
3.复选框:确定是否选中某一项目。Value属性:判断复选框处于什么状态。0—未选定;1—被选定;2—禁止用户选择事件:click例:7.64.单选钮、复选框的区别:单选钮click事件一发生,其状态value必定为真;复选框click事件一发生,其状态有三种情况。
四、
列表框与组合框1.主要属性:等。sorted属性:表示列表框中的项目在运行期间•是基否本按属字性母:顺na序me排、列he显ig示ht。、width、top、lefttext属性:被选中列表项的文本内容。
list属性:字符型数组,存放列表框的项目。对象名.list(对象名.listindex)listindex属性:表示执行时选中的列表项序号•。multiselect属性:设置列表框中一次可选择的项数。listcount属性:表示列表框中项目的数量。selected属性:表示对应的项在程序运行期间是否被选中。
2.组合框:组合了文本框和列表框的特性而形成的一种控件。下拉式组合框:style属性为0,用户可以用键盘在文本框中键入文本内容,也可用鼠标打开列表框选择。简单组合框:style属性为1,可以在文本框中用键盘输入列表框中没有的选项。下拉式列表框:style属性为2,不能输入列表框中没有的选项。
二、常用方法:additem方法:把一个项目加入列表框中。格式:对象.additemitem[,index]对象:列表框或组合框。Item:要加入列表框或组合框的项目。Index:新增项目在列表框或组合框的位置。removeitem方法:从列表框中去掉一个项目。格式:对象.removeitemindexindex:删除项目在列表框或组合框的位置。clear方法:清除列表框、组合框或剪贴板的所有内容。
对象.Clear7.5文件系统控件—、控件描述:驱动器列表框目录列表框文件列表框二、主要属性和事件:1.主要属性Drive:程序运行时返回或设置被选驱动器。格式:[对象.]Drive[=drive]对象:驱动器列表框名称;drive:驱动器名称。
Path:程序运行时返回或设置当前路径。格式:[对象.]path[=pathname]对象:目录列表框或文件列表框;pathname:一个路径名字符串。Filename:返回或设置文件列表框中选定的文件名。Pattern:用于设置文件列表框中显示的文件类型。格式:[对象.]pattern[=value]对象:文件列表框名称;value:一个文件名字符串。对象.pattern="*.com;*.exe;*.bat”2.事件:change:改变被选中的驱动器或被选中的目录。Pathchange:改变文件列表框的路径。三、文件系统控件的使用:编写程序使三个控件同步Subdrivelistbox_change()Dirlistbox.path=drivelistbox.driveEndsubSubdirlistbox_change()filelistbox.path=dirlistbox.pathEndsub例7.97.6
滚动条一、属性:1、基本属性:name、height、width、left、top、enabled、visible等。2、max最大值属性:表示滑块最大位置所代表的值。3、min最小值属性:表示滑块最小位置所代表的值。4、smallchange最小变动值属性:表示用户单击滚动条两端箭头时,滑块移动的增量值。5.largechange最大值变动属性:表示用户单击滚动条的空白处时,滑块移动的增量值。6、value值属性:表示滚动条内滑块所处位置所代表的值。二、事件:有scroll、change事件。例:4.4拖动滑块产生scroll事件;改变value属性触发change。
7.7计时器控件一、属性
:1、基本属性:name、left、top、interval等。2.enabled属性:true:使时钟控件有效,开始计时。False:停止时钟控件工作。二、事件:只有一个timer事件。时钟控件能以一定的规律以一定的时间间隔激
发计时器事件。Interval属性表示两个计时器之间的时间间隔,以ms为单位,最大间隔为1.5min,运行时时钟控件不显示在屏幕上。例:4.8、4.9第8章菜单与工具栏设计一6、、弹菜出单式设菜计单::单击右键就会弹出菜单。1•、创菜建单方控法件:的属性:caption、name、index、c•he访ck问、弹en出ab式le菜、单visible。2方、法菜:单编辑器:执行[工具]|[菜单编辑器]命令[窗,体或名单.击]右po键pu。pmenu菜单名[,标志,x,y]3x、,y创快建捷菜菜单单的的步位骤置:例8.1注标意志:=分0,隔快符捷条菜是单当中作菜的单项控只件对来左创键建的有,反它应们;不能响应标c志lic=k2事,快件捷,而菜且单也中不的能项被对选取左。、右键都有反应。4、菜单控件数组:创建方法。5.菜单控件的代码:二、
工具栏的设计1、使用Toolbar控件:2.使用coolbar控件:三、状态栏设计:第9章对话框设计一、用窗体定制对话框:1、创建窗体对话框:与一般窗体的建立方法一样。2.显示窗体对话框:有load、unload、show、hide、visible等相关语句。Visible属性:窗体对象名.visible=true,显示已装载的窗体窗体对象名.visible=true,从屏幕上隐去窗体二、Msgbox和Inputbox函数:1.msgbox函数和msgbox过程:函数:变量[%]=msgbox(提示[,按钮][,标题])msgbox语句:msgbox提示[,按钮][,标题]作用:msgbox函数返回所选按钮的整数值,见表9.4;msgbox过程等待用户选择一个按钮。提示:在对话框中的显示信息,字符型,最长1024。按钮:指定对话框的外观,内部常数或按钮值都
可,见表9.3。标题:对话框中的标题;缺省部分用“,”号占位符跳过。注意:按钮的组合方式也可使用。如:vbyesno+vbquestion;4+vbqustion见例msg2.Inputbox函数:Inputbox[$](提示[,标题][,缺省][,x坐标位置][,y坐标位作用:打开对话框,等待用户键入文本或选择一个按钮,单击确定后,函数返回文本框中输入的值。注意:⑴用户单击"确定”按钮,返回输入的文本字符串;用户单击"取消”按钮,返回一个空字
符串。⑵各项参数次序必须一一对应。例:sanjiaoxing求二次方程的两个根(实验1-3)。
9.3
用公共对话控件实现标准对话框利用公共对话框可以创建6种标准对话框。一、公共对话框的基本属性和方法:1.基本属性:功能属性action0—无对话框显示1—打开文件对话框2—文件另存为对话框3—颜色对话框4—字体对话框5—打印设置对话框6—帮助对话框Dialogtitle:设置通用对话框标题文本。Cancelerror:单击"取消”按钮是否产生错误。Flag:设置对话框外观及工作方式。Commondialog控件的方法:Showopen:显示打开"文件”对话框。Showsave:显示文件"另存为”对话框。Showcolor:显示"颜色”对话框。Showfont:显示"字体”对话框。Showprinter:显示"打印”对话框。Showhelp:不显示对话框,而是引导windowshelp。
二、文件对话框:Filename:设置或返回选定文件的路径和文件名。Filetitle:设置或返回要打开或保存的文件名。Defaultext:设置或返回对话框缺省的文件扩展名。filter:设置或返回在对话框的文件类型列表框中显示的文件匹配表达式。Filterindex:设置或返回当前的匹配表达式。Initdir:设置或返回在对话框中显示的初始文件目录。三、颜色对话框:color属性获取所选的颜色。
第10章图形操作Height=3600,width=4800scaleheight=3195scalewidth=4680y10.1vb的坐标系统一、坐标系统:坐标系的三要素:坐标原点、坐标度量单位、坐标轴的长度与方向。默认位置是:容器的左上角为坐标原点(0,0)。0 xscaleheightheightscalewidth二、自定义坐标系统:格式:窗体名.scalemode=属性值scalewidth、scaleheight的值用于确定对象31..sSccaallemeo方de法属:性:用于设置对象坐标系的度量对单象位。名.scale(xleft,ytop)-(xright,ybottom对2.象sc:al窗et体op、、图sca形le框le或ft、打s印ca机le。width、scaleheigscaletop、scaleleft的值用于控制对象左上角坐(x标le,ft用,y于t重op定):义左坐标上原角点坐。标缺。省值为0,此时(坐xr标i原gh点t,在y对bo象tt的om左)上:角右。下角坐标。
f坐or标m系1.xsc轴a与ley(0轴,的0)正-(方10向0及,1最00大)坐标值。用于重定义坐标轴方向和度量单位。缺省时其值均
对大象于.0s,cxa轴le的坐正方标向系向统右为,缺y省轴状的正态方。向向下.(zuobiaoxi)10.2图形控件1.line控件:用于显示一条直线。
•、x1椭、圆y1等、。x2、y2:设置或返回直线的起点和Sh终ap点e:坐设标置。控件的形状。•bBaocrkdsetrywlied:th决:定设图置形或内返是回否直透线明的。宽度。Backcolor:设置或返回图形内部的颜色。•FBiolrldsetrysltey:le设:置设图置形或内返部回的直填线充的内形容状。•FBiolrldceorlcorl:or设:置设或置返或回返图回形直内线部的填颜充色内。容的颜色。例:3.mschart控件:2.shape控件:用于显示矩形、园角矩形、园10.3图形方法1、Pset方法:在(x,y)位置以指定颜色画了一个点。格式:[对象.]pset[step](x,y)[,颜色]2.Line方法:[对象.]line[[step](x1,y1)]-(x2,y2)[,颜色][,b[fstep:表示相对位置;b矩形,f填充颜色(x1,y1)起点坐标或矩形左上角坐标;(x2,y2)终点坐标或矩形右下角坐标;注意:(x1,y1)缺省,表示从当前位置开始画线。
4.Point方法:返回(x,y)的rgb颜色。
格式:[对象.]point(x,y)注意:当(x,y)所引用的点位于对象之外,则该53.pcairnctlpei方ct法ur:e:用把于一在个窗窗体体或或图图片片框框中中画已园装、入椭的圆图、像圆文弧件或取扇出形一。部格分式放:到另一个对象中。
[[对象名.].c]ipracilnetp[i[cstuerpe]源(x图,y像),半x1径,y[1,[颜,w色id]t[h,1起,h始i角gh]t[1,x2,w终id止th角2,]h[i,g长ht短2]轴比率]对•(象x,名y):表缺示省圆时心指坐有标焦;点的窗体。源•角图度像用:弧在度源表图示像;中负已值装表入示的画图一像条文半件径。。x•1项,y目1:缺在省目,标分对隔象符中不制能定缺的省左,上角位置。
width1,hight1:在目标对象中指定的宽度和高度。
x2,y2:源对象中剪贴区的左上角坐标。
w方id法t返h2回,h为ig真h(t2-:1)源。对象中剪贴区的宽度和高度。
11.1文件及其结构一、记录:是一个数据单元,每个记录是以回车为结束的一行文本。二、文件及其种类:文件是记录的集合。顺序文件:记录的存取次序与它在文件中的实际次序相一致。随机文件:可以随机访问文件中的任一个记录。二进制文件:可以存储任意结构的文件。
第11章文件操作一、顺序文件的建立:1.打开文件:Open"文件名”For模式As[#]文件号[Len=缓冲区大小]模式: input:读取数据;Output:数据写入文件;Append:数据追加到文件末尾。写入命令:{PRINT|write}#文件号,[输出列表]关闭文件:CLOSE[[#]文件号][,[#]文件号]…例:把文本框的内容写入文件中。p22311.2顺序文件二、顺序文件的读取:1.打
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子电气产品环境试验检验员岗前班组协作考核试卷含答案
- 海水珍珠养殖工岗前岗位安全责任制考核试卷含答案
- 船舶附件制造工安全检查测试考核试卷含答案
- 驯马工岗前安全宣教考核试卷含答案
- 2026年车辆定损理赔基础知识考试试题及答案
- 锅炉设备装配工岗位知识理论考核试卷含答案
- 煤直接液化催化剂制备工安全防护水平考核试卷含答案
- 链板冲压工安全培训模拟考核试卷含答案
- 2025全国计算机等级考试二级C语言历年真题节选及答案详解(一)
- 2025上教师资格笔试考试试题与答案(小学综合素质考生回忆版)
- 2025重庆一中高一入学数学分班考试真题含答案
- 2025年北京科技职业大学辅导员招聘备考题库及答案详解1套
- 烟草系统遴选常见试题及完整答案梳理
- 2026年福建省龙岩市农业学校公开招聘新任教师7人笔试备考题库及答案详解
- 纤维肌痛诊疗临床指南(2025版)
- 腹透病人腹膜炎的护理
- 2026年(全国1卷)高考英语真题分析及2027备考建议
- 轴流泵安装调试施工方案及技术措施
- 小车指标协议书
- 2026年泰安小升初数学小升初分班考卷:分班考全真模拟与附加题(重点高中联盟第1套)含参考答案、逐题解析与评分细则
- 商业项目招商运营管理方案
评论
0/150
提交评论