VisualBasic编码

rachel双鱼座

rachel双鱼座

2016-02-19 13:18

下面图老师小编跟大家分享VisualBasic编码,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

开始编码之前
  
  在VisualBasic中创建应用程序的最重要的(又往往为人忽视的)部分是设计阶段。需要为应用程序设计一个用户界面,这是显然的;但需要设计代码的结构就不那么显然了。构造应用程序的方法不同,可造成应用程序的性能及代码的可维护性、可使用性不同。  VisualBasic应用程序的代码是用分层方式组织的。典型应用程序包括若干模块:应用程序中每个窗体的窗体模块、共享代码的可选标准模块以及可选的类模块。每个模块包含若干含有代码的过程:event过程、Sub子过程或Function过程,以及Property过程。  判定什么过程属于什么模块,这与创建的应用程序的类型有一定关系。因为VisualBasic是基于对象的,所以,利用应用程序代表的对象来考虑应用程序将是有益的。在这一章,示例应用程序Vcr.vbp的设计建立在盒式录像机和电视机组成的对象基础之上。VCR应用程序包含两个窗体模块、一个标准模块和两个类模块。可用“对象浏览器”来检查工程的结构(图5.2)。
  
  VCR应用程序的主窗体(frmVCR)是VCR与电视屏幕组合的可视图像(图5.3)。它包括几个对象,这些对象以现实世界中的图景为模型。一组命令按钮(cmdPlay、cmdRecord等等)模仿的是操作VCR的按钮。软件VCR还包括时钟(lblTime)、通道指示器(lblChannel)、功能指示器(shpPlay、shpRecord等等)以及显像管(picTV)。Vcr.frm窗体模块包括所有这些对象的事件过程。
  
  在很多情况中都存在着多个对象共享的重复过程。例如,“按下”“放像”、“倒带”或“录像”按钮时就要求“暂停”和“停止”按钮有效。最好创建一个共享的子过程,所有按钮都可调用它,而不要在每个按钮的Click事件过程中重复这段代码。如果将来要修改这些子程序,则只在一个地方修改就可进行全部修改。标准模块Vcr.bas包含各种共享过程。
  VCR的某些部分是不可视的,比如磁带的输送机置或录制电视节目的逻辑便是如此。同样,软件VCR的一些功能没有可视图像。这些部分和功能是作为两个类模块Recorder.cls和Tape.cls实现的。clsRecorder模块包含启动“录像”进程的代码;而clsTape模块则包含控制“磁带”方向和速度的代码。这些模块中所定义的类与窗体中的任何对象都没有直接关系。因为它们是独立的代码模块,所以不作任何修改就可轻轻松松重建一个录音程序。
  除了设计代码结构之外,建立命名约定也是很重要的。按照缺省规定,VisualBasic将工程的第一个窗体命名为Form1,第二个窗体为Form2,依此类推。如果应用程序中有几个窗体,则最好赋予它们有含义的名字,以免在编写或编辑代码时出现混淆情况。在附录B“VisualBasic编码约定”中列举了一些VisualBasic建议的命名约定。
  在进一步了解对象和学习编写代码时,可参考VCR示例应用程序,查找有关各种编码技巧的例子。
  
  代码编写机制
  在着手编写代码之前,了解VisualBasic编写代码的机制是很重要的。和任何编程语言一样,VisualBasic有自身的组织、编辑和格式化代码规则。
  
  代码模块
  VisualBasic的代码存储在模块中。模块有三种类型:窗体、标准和类。简单的应用程序可以只有一个窗体,应用程序的所有代码都驻留在窗体模块中。而当应用程序庞大复杂时,就要另加窗体。最终可能会发现在几个窗体中都有要执行的公共代码。因为不希望在两个窗体中重复代码,所以要创建一个独立模块,它包含实现公共代码的过程。独立模块应为标准模块。此后可以建立一个包含共享过程的模块库。
  每个标准模块、类模块和窗体模块都可包含:
   声明。可将常数、类型、变量和动态链接库(DLL)过程的声明放在窗体、类或标准模块的模块级。
   过程。Sub、Function或者Property过程包含可以作为单元来执行的代码片段。本章后面的“过程概述”一节中将讨论这些内容。
  
  窗体模块
  窗体模块(文件扩展名为.FRM)是大多数VisualBasic应用程序的基础。窗体模块可以包含处理事件的过程、通用过程以及变量、常数、类型和外部过程的窗体级声明。如果要在文本编辑器中观察窗体模块,则还会看到窗体及其控件的描述,包括它们的属性设置值。写入窗体模块的代码是该窗体所属的具体应用程序专用的;它也可以引用该应用程序内的其它窗体或对象。
  
  标准模块
  标准模块(文件扩展名为.BAS)是应用程序内其它模块访问的过程和声明的容器。它们可以包含变量、常数、类型、外部过程和全局过程的全局(在整个应用程序范围内有效的)声明或模块级声明。写入标准模块的代码不必绑在特定的应用程序上;如果能够注意不用名称引用窗体和控件,则在许多不同的应用程序中可以重用标准模块。
  
  类模块
  在VisualBasic中类模块(文件扩展名为.CLS)是面向对象编程的基础。可在类模块中编写代码建立新对象。这些新对象可以包含自定义的属性和方法。实际上,窗体正是这样一种类模块,在其上可安放控件,可显示窗体窗口。
  详细信息关于在类模块中编写代码的更详细的信息,请参阅第九章“用对象编程”。
  注意VisualBasic的专业版和企业版也包含ActiveX文档、ActiveX设计器和用户控件。它们引入了具有不同文件扩展名的新模块类型。从编写代码的角度来看,这些模块应视同为窗体模块。
  
  使用“代码编辑器”
  VisualBasic“代码编辑器”是一个窗口,大多数代码都在此窗口上编写。它像一个高度专门化的字处理软件,有许多便于编写VisualBasic代码的功能。图5.4所示为“代码编辑器”窗口。
  因为要操作模块中的VisualBasic代码,所以要为每一个从“工程资源管理器”中选择的模块打开一个独立的“代码编辑器”窗口。在每个模块中,对于模块中所包含的每个对象,将模块中的代码再细分出与对象对应的独立部分。用“对象列表框”实现各部分间的切换。在窗体模块中,该列表包含一个通用段,一个属于窗体自身的段以及窗体所包含的每一控件的段。对于类模块,列表包括一个通用段和一个类段;对于标准模块,只有一个通用段被显示。
  每一段代码都可包含几个用“过程列表框”访问的不同过程。对窗体或控件的每一个事件过程,窗体模块的过程列表都包含一个独立的段。例如,Label控件的过程列表就包含Change事件段、Click事件段和DblClick事件段等等。类模块只列举类本身的事件过程——初始化和终止。标准模块不列举任何事件过程,因为标准模块不支持事件。
  
  模块通用段的过程列表只包含唯一段——声明段,其中放置模块级的变量、常数和DLL声明。当在模块中添加子过程或函数过程时,那些过程被添加到声明段下方的“过程列表框”中。
  代码的两种不同视图都可用于“代码编辑器”窗口。可以一次只查看一个过程,也可以查看模块中的所有过程,这些过程彼此之间用线隔开(如图5.4所示)。为了在两个视图之间进行切换,利用编辑器窗口左下角的“查看选择”按钮。
  
  自动完成编码
  VisualBasic能自动填充语句、属性和参数,这些性能使编写代码更加方便。在输入代码时,编辑器列举适当的选择、语句或函数原型或值。通过“工具”菜单上的“选项”命令访问“选项”对话框,在“选项”对话框的“编辑器”选项卡上可用这样的选项,由它们决定是允许还是禁止各代码的设置值。
  在代码中输入一控件名时,“自动列出成员特性”会亮出这个控件的下拉式属性表(图5.5)。键入属性名的前几个字母,就会从表中选中该名字,按Tab键将完成这次输入。当不能确认给定的控件有什么样的属性时,这个选项是非常有帮助的。即使选择了禁止“自动列出成员特性”,仍可使用CTRL J组合键得到这种性能。
  
  “自动快速信息”功能显示语句和函数的语法(图5.6)。当输入合法的VisualBasic语句或函数名之后,语法立即显示在当前行的下面,并用黑体字显示它的第一个参数。在输入第一个参数值之后,第二个参数又出现了,同样也是黑体字。“自动快速信息”也可以用CTRL I组合键得到。
  
  书签
  在代码编辑器中书签可用来标记代码的某些行,以便您以后可以很容易地返回这些行。书签开关的切换以及定位到已有书签的命令可以在编辑、书签菜单项或编辑工具栏中得到。
  详细信息关于如何使用组合键使用“代码编辑器”窗口的各种功能的更详细信息,请参阅“代码窗口的快捷键”。
  
  编码基础
  这一部分介绍代码编写机制,包括如何中断和合并代码行、如何添加注释、如何使用数字以及VisualBasic命名约定。
  
  将单行语句分成多行
  可以在“代码”窗口中用续行符(一个空格后面跟一个下划线)将长语句分成多行。由于使用续行符,无论在计算机上还是打印出来的代码都变得易读。下面用续行符(_)将代码分成若干行:
  Data1.RecordSource=_
  "SELECT*FROMTitles,Publishers"_
  &"WHEREPublishers.PubId=Titles.PubID"_
  &"ANDPublishers.State='CA'"
  在同一行内,续行符后面不能加注释。至于在什么地方可以使用续行符,还是有某些限制的。
  
  将多个语句合并到同一行上
  通常,一行之中有一个VisualBasic语句,而没有语句终结符,但是也可以将两个或多个语句放在同一行,只是要用冒号(:)将它们分开。
  Text1.Text="Hello":Red=255:Text1.BackColor=
  Red
  但是,为了便于阅读代码,最好还是一行放一个语句。
  详细信息关于详细信息,请参阅附录A“VisualBasic的规范、限制和文件格式”。
  
  在代码中添加注释
  阅读本手册的例子时常会遇到注释符(')。这个符号告诉VisualBasic,忽略该符号后面的内容。这些内容是代码段中的注释,既是为了方便开发者,也是为了方便以后可能检查源代码的其他程序员。例如:
  '这是从屏幕左边
  '开始的注释。
  Text1.Text="Hi!"  '在文本框中放
       '欢迎词。
  注释可以和语句在同一行,并写在语句的后面,也可占据一整行。上述代码对这两种情况都作了示范。记住,不能在同一行上将注释接在续行符之后。
  注意您可以通过选中两行或多行代码并在“编辑”工具栏上通过选择“注释块”或“删除注释块”按钮来对该代码块添加或删除注释符号。
  
  理解数字系统
  在本文档中大多数的数值都是十进制的(基数为10)。但有时用十六进制数(基数为16)或八进制数(基数为8)更方便。VisualBasic用前缀&H表示十六进制数,而用&O表示八进制数。下表说明同一个数的十进制、八进制和十六进制表示。
  
  通常不必掌握十六进制或八进制数制,因为计算机可以用任何数制的数工作。但是,对某些任务来说,有的数系就比其它数系更合适,例如利用十六进制数设置屏幕和控件的颜色。
  
  VisualBasic的命名约定
  在编写VisualBasic代码时,要声明和命名许多元素(Sub和Function过程、变量、常数等等)。在VisualBasic代码中声明的过程、变量和常数的名字,必须遵循这些规则:
  1.它们必须以字母开头。
  2.它们不可以包含嵌入的句号或者类型声明字符(规定数据类型的特殊字符)。
  3.它们不能超过255个字符。控件、窗体、类和模块的名字不能超过40个字符。
  4.它们不能和受到限制的关键字同名。
  受到限制的关键字是VisualBasic使用的词,是语言的组成部分。其中包括预定义语句(比如If和Loop)、函数(比如Len和Abs)和操作符(比如Or和Mod)。
  详细信息关于关键字表的更详细信息,请参阅《VisualBasic6.0语言参考手册》。
  窗体和控件可以和受到限制的关键字同名。例如,可以将某个控件命名为Loop。但在代码中不能用通常的方法引用该控件,因为VisualBasic会认为Loop意味着关键字。例如,下面的代码就会出错。
  Loop.Visible=True   '出错。
  为了引用那些和受到限制的关键字同名的窗体或控件,就必须限定它们,或者将其用方括号[]括起来。例如,下面的代码就不会出错。
  MyForm.Loop.Visible=True   '用窗体名
        '将其限定。
  [Loop].Visible=True   '方括号
        '起了作用。
  在引用窗体和控件时都可以用这种方式使用方括号,但在声明变量或定义过程期间,当变量名或过程名与受到限制的关键字相同时,这种方式是不能使用的。方括号还可以用来强制VisualBasic接受其它类型库提供的名称,这些名称与受到限制的关键字冲突。
  注意因为键入方括号也是令人厌倦的事情,所以希望少用受到限制的关键字作窗体或控件名。但是,如果VisualBasic的新版本定义了与现有窗体或控件冲突的新关键字,那么在为使用新版本而更新代码时,可以使用这个技巧。_
  

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)->

展开更多 50%)
分享

猜你喜欢

VisualBasic编码

编程语言 网络编程
VisualBasic编码

VisualBasic概述

编程语言 网络编程
VisualBasic概述

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

VisualBasic概念

编程语言 网络编程
VisualBasic概念

VisualBasic控件简介

编程语言 网络编程
VisualBasic控件简介

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

VisualBasic使用技巧

编程语言 网络编程
VisualBasic使用技巧

URL编码处理

Web开发
URL编码处理

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Win10电脑管家检测系统盘异常怎么办

Win10电脑管家检测系统盘异常怎么办

实现StatusBar的Flat风格

实现StatusBar的Flat风格
下拉加载更多内容 ↓