用VB设计一个简单的加法程序

用VB设计一个简单的加法程序,第1张

计算机的多媒体技术已经广泛普及, 对于一般的用户来说, 采用可视化编程工具是的选择, VB程序设计语言就是其中一个典型的代表。Visual Basic是Microsoft Windows的编程语言。Visual Basic是在一个集成开发环境(IDE)中创建的,IDE使得程序员可以方便地创建、运行和调试Visual Basic程序。Visual Basic是世界上使用最广泛的快速应用程序开发语言。为提高大家学习VB的兴趣,在这里,我们以一个简单的加法程序来体验一下VB的强大功能。

首先我们启动VB,在出现"新建工程"对话框后,选择"标准EXE",单击"打开"按钮,即进入如下图的VB开发环境。

第一步:单击工具箱中的"TextBox(文本框)"图标 ,移动鼠标指针到窗体Form1上,这时鼠标指针变成了"+"形状。拖出3个并排的有一点间距的方框出来,里面有text1、text2、text3的字样,分别选中它们,按鼠标退格键删除这些字样。再单击"Label(标签)"图标A,在刚才的3个方框之间拖2个标签框,分别键入加号"+"和等于号"=",最后单击"Command(命令按钮)"图标 ,在窗体的下方拖出一个按钮出来,拖出一个带有Command1字样的按钮,直接写上"计算"二字。如图所示:

第二步:双击"计算"按钮,会出现如下的代码窗口:

在Private Sub Command1_Click()和End Sub之间写上如下代码:

M = Val (Text1Text)

N = Val (Text2Text)

K = Val (Text3Text)

If m + n = k Then

Label1Caption = "正确!"

Else

Label1Caption = "错误!"

End If

第三步:关闭代码窗口,点"运行"---"启动"。在文本框中分别填写2、5、7,再点"计算"按钮,看窗体上出现什么文字,关闭Forml,再"启动",填写3、5、7后"计算",看窗体上出现什么文字。这时你会发现,在输入第一次数据时,会显示正确!在输入第二次数据时,会显示错误!

第四步:最后,我们来保存这个程序:首先点按"文件"----"生成工程"----选择保存地点为"C:\",文件名为"jiafa"----"确定"。再到"C:\"中去,找到这个"jiafa"文件,我们可以从它的后缀名中得知,这是个不依赖VB程序可以独立运行的可执行程序。运行一下,很有成就感吧。

短短四步,我们就可以编制出一个简单的加法程序,可见,软件的编制并不是那么神秘,只要你肯专心学习,一定会取得非凡成就的。以上程序已在vb60调试通过。以上所讲的只是VB的一些基本 *** 作,仅取抛砖引玉的作用,希望各位VB高手能提出更多更好的方法,让我们在学习VB的过程中不断地得到提高。

1、重点掌握的内容: 模块: 在Visual Basic中提供了三种类型的模块:窗体模块、标准模块和类模块。 标准模块、类模块和窗体模块都可包含:l l 声明。可将常数、类型、变量和动态链接库 (DLL) 过程的声明放在窗体、类或标准模块的声明部分。l l 过程。子过程、函数过程 或者属性过程,过程包含可以作为单元来执行的代码片段。 参见711节。过程:一个应用程序是由若干模块组成的,而每个模块又是由若干个更小的代码片段组成,将组成这些模块的代码片段称为过程(Procedure)。Visual Basic中过程可分:函数过程、子过程、属性过程 、通用过程。子过程:子过程是在响应事件时执行的程序段。 1.子过程语法如下: [Private | Public | Friend] [Static] Sub 过程名 [(参数表)] [程序段] [Exit Sub] [程序段] End Sub 2子过程调用 3使用子过程管理输入通用过程: 通用过程告诉应用程序如何完成一项指定的任务。一旦确定了通用过程,一般由其他过程(事件过程等)来调用。事件过程: Visual Basic 的每一个窗体和控件都存在一个预定义的事件集。运行应用程序时,当某个事件发生,而且在与该事件关联的事件过程中存在代码,则Visual Basic就会调用该事件过程。因为事件过程的过程名在对象和代码之间建立了联系,所以可以说事件过程是附加在窗体和控件上的。Function 过程: 1 函数过程的语法 [Public | Private | Friend] [Static] Function Name [(Arglist)] [As 数据类型] [程序段] [Name = Expression] [Exit Function] [程序段] [Name = Expression] End Function与 Sub 过程一样,Function 过程也是一个独立的过程,可读取参数、执行一系列语句并改变其参数的值。与子过程不同,Function 过程可返回一个值到调用的过程。 Sub 过程与Function 过程的区别:参见723节。调用过程:调用 Sub 过程与 Function 过程不同。在表达式中,调用 Sub 过程的是一个独立的语句,而调用函数过程函数过程只是表达式的一部分。Sub 过程还有一点与函数不一样,它不会用名字返回一个值。但是,与 Function过程一样,Sub 过程也可以修改传递给它们的任何变量的值。调用 Sub 过程有两种方法:以下两个语句都调用了名为 MyProc 的 Sub 过程。Call MyProc (FirstArgument, SecondArgument)MyProc FirstArgument, SecondArgument注意当使用 Call 语法时,参数必须在括号内。若省略 Call 关键字,则也必须省略参数两边的括号。通常,调用自行编写的函数过程的方法和调用 Visual Basic 内部函数过程(例如 Abs)的方法一样;即在表达式中写上它的名字。请详细参考73节2、一般掌握内容:程序的调试: 参考74节在Visual Basic60中的错误分为三种类型:l l 语法错误l l 执行错误l l 逻辑错误 第7章 VB应用程序结构[学习目标]

1:掌握:Sub过程,Function过程、Event过程和通用过程

2 理解:VB应用程序的结构

3:了解:程序调试技术

[学习要点]

模块,过程,程序调试

本章主要介绍编写应用程序的各种部件和模块、代码编写机制和编码基础等,理解这些基本内容之后,才能用VB编写出功能强大的应用程序。

一个应用程序实际上是使计算机完成特定任务的指令集。应用程序的结构就是指组织指令的方法,也就是指令存放的位置以及它们的执行顺序。

71 模块

VB的代码存储在模块中。在VB中提供了三种类型的模块:窗体模块、标准模块和类模块。

简单的应用程序可以只有一个窗体,所用的程序都驻留在窗体模块中,而当应用程序庞大复杂时,就要另外附加窗体。最终可能有几个窗体中有一些共同都要执行的代码,为了在两个窗体中不产生重复代码,可创建一个独立的模块,用它实现代码公用。该独立模块即是标准模块。此外还可以建立包含共享代码与数据的类模块。

每个标准模块、类模块和窗体模块可包含:

声明。 可将常数、类型、变量和动态链接库(DLL)过程的声明放在窗体、类或标准模块的声明部分。每个模块只有一个声明部分

过程。每个模块可有多个过程,过程是划分VB代码的最小单元,每个过程是一个可执行的代码片段。VB中主要有子过程、函数过程或者属性过程等

711 各种模块类型

1窗体模块

由于VB是面向对象的应用程序开发工具,所以应用程序的代码结构就是该程序在屏幕上表示的对应模型。根据定交,对象包含数据和代码。应用程序中的每个窗体都有一个相对应的窗体模块(文件扩展名为frm)

窗体模块是VB应用程序的基础。窗体模块可以包含处理事件的过程、通用过程以及变量、常数、自定义类型和外部过程的窗体级声明。写入窗体模块的代码是该窗体所属的具体应用程序专用的;也可以引用该程序内的其它窗体和对象

每个窗体模块都包含事件过程,在事件过程中有为响应该事件而执行的程序段。窗体可包含控件。在窗体模块中,对窗体上的每个控件都有一个对应的事件过程集。除了事件过程,窗体模块还可包含通用过程,它对来自该窗体中任何事件过程的调用都作出响应。

2标准模块

标准模块是程序中的一个独立容器,包含全局变量、Function(函数)过程和Sub过程(子过程)。

可将那些与特定窗体或控件无关的代码放入标准模块中。标准模块中包含应用程序内的允许其它模块访问的过程和声明。它们可以包含变量、常数、类型、外部过程和全局声明或模块级声明。写入标准模块的代码不必固定在特定的应用程序上;

(1)使用标准模块

在编写程序时,很可能会遇到一些使用相同变量和例程的窗体和事件过程。在缺省状态下,变量对于事件过程来说是局部的,就是说仅能在创建这些变量的事件过程中读取或者修改变量。与之相似,事件过程对于创建它们的窗体来说也是局部。为了在工程中的所有窗体和事件中共享变量和过程,需要在该工程的一个或多个标准模块中对它们进行声明和定义。

标准模块或代码模块是具有文件扩展名bas,并包含能够在程序任何地方使用的变量和过程的特殊文件。

正如窗体一样,标准模块被单 独列在Project(工程)窗口内,并可通过使用File(文件)菜单中的Save Modulel As菜单项存盘。但是,与窗体不同,标准模块不包含对象或属性设置而只包含可在代码窗口中显示和编辑的代码。

(2)创建标准模块

如要在程序中创建新 的标准模块,那么单击工具条Add Form(添加窗体)按钮上的下箭头并单击Mode(模块),或者单 击Project(工程)菜单中的Add Module(添加模块)菜单项。在工程中创建一个空的标准模块的步骤如下:

S1:启动VB,打开一个新的标准工程,单击工程 菜单中的Add Module菜单项,单击Open 按钮。VB在工程中增加一个名为Module的标准模块。该 模块对应的代码窗口被打开,对象和过程列表框的内容表明该 标准模块的通用声明已被打开。在此所声明的变量与过程 在整个程序都可以使用。

S2:双击工程资源管理器窗口的标题条,以便能看到整个工程资源管理器窗口,

S3:在File(文件)菜单中,单 击Save Modulel As

S4:如果D:\VB6sbs\less10文件夹未被选择时,选择该文件夹,键入MyTestModbas,然后按回车。该标准模块作为MyTestModbas文件保存到磁盘,并且可以通过Project(工程)的Add File菜单项可将此文件通过其文件名加载到另一个工程中。

S5:双击Project(属性)窗口标题条。由于模块不包含对象,因此它惟一的属性就是Name

S6:将Name属性改为modVariables,然后按ENTER键。

(3)声明公用变量

在标准模块中声明 全局变量十分简单,键入关键字Public,后跟该 变量名。

缺省状态下,公用就量在模块中被声明为变体类型,但是可以通过使用As关键字来指定相应类型,可以把公用变量声明为某个指定的基本类型。

3类模块

在VB中类模块是面向对象编程的基础。可以在类模块中编写代码建立新对象。这些新对象可以包含自定义的属性和方法。实际上,窗体正是这样一种类模块,在其上可安放控件,可显示窗体窗口

用类模块创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块包含代码又包含数据,可视为没有物理表示的控件。

712模块设计的考虑

在VB中创建应用程序的最重要的部分是设计阶段。首先需要为应用程序设计一个用户界面,这个界面的设计比较容易确定。但设计代码的结构就是一项较复杂的工作。构造应用程序的方法不同,可能会造成应用程序的性能以及代码的可维护性,可使用性不同。

VB应用程序呈层次结构。典型应用程序包括若干个模块:应用程序中每个窗体的窗体模块、共享代码的标准模块和类模块。每个模块包含若干含 有代码的过程:Event过程,Sub过程或Function过程及Property过程。

在很多情况中都存在着多个对象共享的重复过程。这种情况最好创建一个共享的子过程,使大家都可以调用它。即使将来修改这些子程序,则只在一个地方修改就可进行全部修改,这将大大提高程序的可读性和可维护性。可以把所有的共享 *** 作放在标准的模块中。

713 代码编辑器

VB代码编辑器是一个窗口,大多数代码都在此窗口 上编写。有许多便于编写VB代码的功能。在每个模块中,对于模块中包含 的每个对象,将模块中的代码再细分出与对象对应的独立部分用"对象列表框"实现各对象间的切换。对于模块,列表包含 一个通用段和一个类段;对于标准模块,只有一个通用段被显示。每一段代码都可包含 若干个用"过程列表框"访问的不同过程。对窗体或控件的每一个事件过程,窗体模块的过程列表都包含一个独立的段。类模块只列举本身的事件从初始化到终止。标准模块的过程列举任何事件过程,因为标准模块不支持事件。模块通用段的过程列表只包含声明段,其中放置模块级的变量、常数和DLL声明

VB代码编辑器的一些功能和用法:

1自动完成编码

VB能自动填充语句、属性和参数,这些性能使编写代码更加方便。在输入代码时,编辑器列举适当的选择。通过"工具"菜单上的"选项"命令访问"选项"对话框,在"选项"对话框的"编辑器"选项卡上可以选择"自动列出成员特性",由它们决定是允许还禁止代各码的设置值。在代码中输入一控件名时,"自动列出成员特性"会显示出这个控件的下拉式属性表。键入属性名的前几个字母,就会从表中选中该名字,按Tab键将完成输入。当不能确认给定的控件有什么样的属性时,这个选项是非常有帮助的。即使选择了禁止"自动列出成员特性",仍可使用CTRL+J组合键得到这种性能。

"自动快速信息"功能可显示语句和函数的语法。

2书签

在代码编辑器中书签可用来标记代码的某些行,以便以后可以很容易地返回这些行。书签开关的切换以及定位到已有书签的命令可以在编辑菜单中书签选项中得到。

QBASIC函数一览表

函数名 函数格式 功 能

ABS y=ABS(n) 得到n的绝对值

ASC y=ASC(S$) 得到字符串头一个字符的ASCII码

ATN y=ATN(n) 得到反正切值(单位是弧度)

CDBL y=CDBL(n) 把n转化为双精度浮点格式

CHR$ S$=CHR$(n) 得到ASCII码n对应的字符

CINT y=CINT(n) 对n进行舍入取整(奇凑偶

CLNG y=CLNG(n) 把一个数n转化为长整数

COMMAND$ S$=COMMAND$ 在DOS下启动程序时,获得命令行中的其余信息

COS y=COS(n) 得到自变量n的余弦值

CSNG y=CSNG(n) 把一个数值转化为单精度数

CSRLIN y=CSRLIN 返回光标行数位置

CVI V%=CVI(2字节的串) 字符串转换为整型数

CVS V!=CVS(4字节的串) 字符串转换为单精度数

CVL V&=CVL(4字节的串) 字符串转换为长整数

CVD V#=CVD(8字节的串) 字符串转换为双精度数

CVSMBF V!=CVSMBF(4字节MS字符串) 转换成IEEE格式单精度数

CVDMBF V#=CVDMBF(8字节MS字符串) 转换成IEEE格式双精度数

DATE$ S$=DATE$ 把系统日期赋给变量S$

ENVIRON$ S$=ENVIRON$(X$)

S$=ENVIRON$(n) 得到环境表中的参数

EOF y=EOF(filenum) 遇到文件结束则返回真,否则为假

ERDEV y=ERDEV 返回设备驱动器错误码

ERDEV$ S$=DEDEV$ 返回设备驱动器错误信息

ERR y=ERR 返回错误的错误号

ERL y=ERL 返回出错处最近的行号

EXP y=EXP(X) 指数函数y=ex

FILEATTR y=FILEATTR(filenum,attr) 返回打开文件的信息

FIX y=FIX(n) 截掉小数部分进行取整

FRE y=FRE({S$|-1|-2}) 得到可以被程序使用的剩余内存空间的大小

FREEFILE y=FREEFILE 返回下一个自由BASIC文件号

HEX$ S$=HEX$(n) 把十进制数转换成相应十六进制格式字符串

INKEY$ S$=INKEY$ 从键盘上读数据但不显示

INP y=INP(portno) 从一个I/O端口读入一个字节

INPUT$ S$=INPUT$(m[,[#]n]) 从键盘或文件中读入指定数量的字符

INSTR y=INSTR([n,]targetstring, patternsttring) 字符串查找

INT y=INT(n) 得到一个不大于n的最大整数

IOCTL$ S$=IOCTL$[#]n 从一个设备驱动器程序接收数据

LBOUND y=LBOUND(array[,n]) 返回数组array第n维的最小下标

LCASE$ S$=LCASE$(X$) 把字符串X$的大写字母全变为小写

LEFT$ S$=LEFT$(X$,n) 得到字符串X$最左边的n个字符

LEN y=LEN(S$) 得到字符串S$的长度

LOC y=LOC(n) 得到文件中现在所处的位置(当前位置)

LOF y=LOF(n) 得到磁盘文件的长度或通讯缓冲区剩余空间大小

LOG y=LOG(x) 自然对数y=InX

LPOS y=LPOS(printer) 得到打印缓冲区中当前的位置

LTRIM$ S$=LTRIM$(x$) 返回去掉前导空格的字符串复制品

MID$ S$=MID$(X$,n[,m]) 从X$的第n个字符开始取m个字符;省略m,则取完

MKD$ S$=MKD$(V#) 把双精度数值转化为随机文件中输出字符串

MKI$ S$=MKI$(V%) 把整数转换为字符串

MKL$ S$=MKL$(V&) 把长整数转换为字符串

MKS$ S$=MKS$(V!) 把单精度数转换为字符串

MKSMBF$ S$=MKSMBF$(V!) 把单精度数转换为MS格式字符串

MKDMBF$ S$=MKDMBF$(V#) 把双精度数转换为MS格式字符串

OCT$ S$=OCT$(n) 得到数值n的八进制形式字符串,负数为其补码形式

PEEK y=PEEK(offset) 得到指定存储单元的值

PEN y=PEN(option) 读取光笔状态

PLAY y=PLAY(x) 得到后台音乐缓冲区音符个数

PMAP y=PMAP(i,option) 把图形屏幕的物理坐标变为实用坐标或反之

POINT color=POINT(x,y)

y=POINT(n) 得到一个象素的颜色

得到前一个点的坐标

POS y=POS(x) 得到光标的列数位置

RIGHT$ S$=RIGHT$(x$,n) 从字符串X$的右边取n个字符

RND y=RND(n) 得到0到1之间的随机数,n=0则得到前一个RND值

RTRIM$ S$=RTRIM$(X$) 返回一个去掉X$尾随空格的字符串

SADD y=SADD(S$) 返回S$字符串的地址

SCREEN y=SCREEN(row,column[,option]) 得到屏幕上指定字符的ASCII或属

SEEK y=SEEK(filenum) 返回当前文件位置

SETMEM y=SETMEM(n) 改变远堆集使用的内存大小

SGN y=SGN(n) 输出n的符号

SIN y=SIN(x) 正弦值y=SinX

SPACE$ S$=SPACE$(n) 输出长度为n的空格字符串

SPC SPC(n) 在PRINT语句中跳过n个空格

SQR y=SQR(n) 给出n的平方根

STICK y=STICK(n) 返回两个 *** 纵杆的坐标

STR$ S$=STR$(n) 返回一个表示n值的字符串

STRIG y=STRIG(n) 返回 *** 纵杆触发状态

STRING$ S$=STRING$(n,x$) 返回n个x$第一个字符组成的字符串

TAB TAB(column) 将输出位置移到column列

TAN y=TAN(x) 正切值y=tgX

TIME$ S$=TIME$ 获得当前时间

TIMER y=TIMER 输出自午夜开始后流逝的秒数

UBOUND y=UBOUND(array[,n]) 输出数组array第n维最大下标

UCASE$ S$=UCASE$(x$) 把字符串x$中所有小写字母变成大写

VAL y=VAL(S$) 输出字符串S$的相应数值

VARPTR y=VARPTR(variable) 返回变量的偏移地址

VARSEG y=VARSEG(variable) 返回变量的段地址

VARPTR$ S$=VARPTR$(variable) 返回变量地址的字符串表示

够不够全呵呵!

以上就是关于用VB设计一个简单的加法程序全部的内容,包括:用VB设计一个简单的加法程序、在开发VB应用程序时,一般包含几个步骤分别是什么、BASIC语言的的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zz/10217998.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存