VB编程基础教程11–过程

2022-05-19 12:35:23   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《VB编程基础教程11–过程》,欢迎阅读!
过程,编程,基础,教程
VB编程基础教程11过程

过程概述

将程序分割成较小的逻辑部件就可以简化程序设计任务。称这些部件为过程,它们可以变成增强和扩展 visual basic 的构件。

过程可用于压缩重复任务或共享任务,例如,压缩频繁的计算、文本与控件操作和数据库操作。 用过程编程有两大好处:

过程可使程序划分成离散的逻辑单元,每个单元都比无过程的整个程序容易调试。

一个程序中的过程,往往不必修改或只需稍作改动,便可以成为另一个程序的构件。 visual basic 中使用下列几种过程: sub 过程不返回值。

function 过程返回值。

property 过程返回并指定值,以及设置对象引用。 详细信息 关于属性过程,请参阅用对象编程 关于子过程和函数过程,请参阅下面的主题: 子过程 介绍子过程及其使用。 函数过程 介绍函数过程及其使用。 使用过程 介绍从应用程序内部调用过程。 向过程传递参数 讨论用参数向过程传递数据。

sub 过程

子过程是在响应事件时执行的代码块。将模块中的代码分成子过程后,应用程序中查找和修改代码变得更容易了。 子过程的语法是:

[private|public][static]sub procedurename (arguments) statements end sub

每次调用过程都会执行 sub end sub 之间的 statements。可以将子过程放入标准模块、类模块和窗体模块中。按照缺省规定,所有模块中的子过程为 public(公用的),这意味着在应用程序中可随处调用它们。

过程的 arguments 类似于变量声明,它声明了从调用过程传递进来的值。 visual basic 中应区分通用过程和事件过程这两类子过程。


通用过程

通用过程告诉应用程序如何完成一项指定的任务。一旦确定了通用过程,就必须专由应用程序来调用。反之,直到为响应用户引发的事件或系统引发的事件而调用事件过程时,事件过程通常总是处于空闲状态。

为什么要建立通用过程呢?理由之一就是,几个不同的事件过程也许要执行同样的动作。公共语句放入一分离开的过程(通用过程)并由事件过程来调用它,诚为编程上策。这样一来就不必重复代码,也容易维护应用程序。例如,vcr 示例应用程序使用了一个通用过程,几个不同滚动按钮的 click 事件都调用这个通用过程。click 事件中的代码调用按钮管理器的子过程,子过程运行自身的代码,然后将控制返回到 click 事件过程。

事件过程

visual basic 中的对象对一个事件的发生作出认定时,便自动用相应于事件的名字调用该事件的过程。因为名字在对象和代码之间建立了联系,所以说事件过程是附加在窗体和控件上的。 一个控件的事件过程将控件的(在 name 属性中规定的)实际名字、下划线 (_) 和事件名组合起来。例如,如果希望在单击了一个名为 cmdplay 的命令按钮之后,这个按钮会调用事件过程,则要使用 cmdplay_click 过程。

一个窗体事件过程将词汇 “form”、下划线和事件名组合起来。如果希望在单击窗体之后,窗体会调用事件过程,则要使用 form_click 过程。(和控件一样,窗体也有唯一的名字,但不能在事件过程的名字中使用这些名字。如果正在使用 mdi 窗体,则事件过程将词汇 ” mdiform ” 下划线和事件名组合起来,如 mdiform_load 所有的事件过程使用相同的语法。 控件事件的语法 窗体事件的语法

private sub controlname_eventname (arguments ) statements end sub

private sub form_eventname (arguments) statements end sub

虽然可以自己编写事件过程,但使用 visual basic 提供的代码过程会更方便,这个过程自动将正确的过程名包括进来。对象框中选择一个对象,过程框中选择一个过程,就可在代码编辑器窗口选择一个模板

在开始为控件编写事件过程之前先设置控件的 name 属性,这不失为一个好主意。如果对控件附加一个过程之后又更改控件的名字,那么也必须更改过程的名字,以符合控件的新名字。否则,visual basic 无法使控件和过程相符。过程名与控件名不符时,过程就成为通用过程。 详细信息 visual basic 可识别各种窗体和控件的各种事件。关于所有事件的说明,请参阅语言参考。




funtion 过程

visual basic 包含内置的、或内部的函数,如 sqrcos chr。此外,还可用 function 语句编写自己的 function 过程。 函数过程的语法是:

private|public][static]function procedurename (arguments) [as type] statements end function

sub 过程一样,function 过程也是一个独立的过程,可读取参数、执行一系列语句并改变其参数的值。与子过程不同,function 过程可返回一个值到调用的过程。sub 过程与function 程之间有三点区别:

一般说来,让较大的语句或表达式的右边包含函数过程名和参数 (returnvalue = function),这就调用了函数。

与变量完全一样,函数过程有数据类型。这就决定了返回值的类型。(如果没有 as 子句,缺省的数据类型为 variant。)

procedurename 自身赋一个值,就可返回这个值。function 过程返回一个值时,该值可成为较大表达式的一部分。

例如,下面是已知直角三角形两直角边的值,计算第三边(斜边)的函数: function hypotenuse (a as integer, b as integer) as string hypotenuse = sqr (a ^ 2 + b ^ 2) end function

visual basic 中调用 function 过程的方法和调用任何内部函数的方法是一样的: label1.caption = hypotenuse(cint(text1.text), _ cint(text2.text))

strx = hypotenuse (width, height)

详细信息 关于函数过程的详细信息,请参阅语言参考中的“function 语句。调用各种类型的过程的技巧,在本章后面的调用过程部分有详细讨论。




本文来源:https://www.wddqxz.cn/68b99570834d2b160b4e767f5acfa1c7aa008291.html

相关推荐