- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章变量作用范围
第8章 变量与过程的作用范围
8.1 代码模块的概念
VB应用程序的组成
8.1.1 窗体模块
由于 Visual Basic 应用程序是基于对象的,所以应用程序的代码结构就是该程序在屏幕上物理表示的模型。根据定义,对象包含数据和代码。在屏幕上看到的窗体代表属性,这些属性定义了窗体的外观和内在特性。应用程序中的每个窗体都有一个包含其代码的相关的窗体模块(文件扩展名为 .FRM)。
每个窗体模块都包含:
⑴事件过程,即代码部分,其中有为响应特定事件而执行的指令;
⑵控件。在窗体模块中,对窗体上的每个控件都有一个对应的事件过程集;
⑶窗体模块还可包含通用过程,它对来自任何事件过程的调用都作出响应。
用户可以通过“工程”菜单上的“添加窗体”或工具条上的添加窗体按钮来创建一个新的窗体,或把一个属于其它工程的窗体添加到当前工程中.
8.1.2 标准模块
标准模块(具有 .bas 文件扩展名)可以包含类型、常数、变量、外部过程和公共过程的公共的或模块级的声明。
可将那些与特定窗体或控件无关的代码放入另一类型的模块— 标准模块(文件扩展名为 .BAS )中。一个过程可能用来响应几个不同对象中的事件,应该将这个过程放在标准模块中,而不应在每一个对象的事件过程中重复相同的代码。
添加标准模块的步骤:
工程菜单→添加模块→打开添加模块对话框→选择新建选项卡→ 双击模块图标(单击打开按钮)→在属性窗口给标准模块命名(Name)→在标准模块的代码窗口中编写代码。
8.1.3 类模块
类模块(具有 .cls 文件扩展名)与窗体模块类似,只是没有可见的用户界面。可以使用类模块创建含有方法和属性代码的自己的对象。
用类模块(文件扩展名为 .CLS )创建对象,这些对象可被应用程序内的过程调用。标准模块只包含代码,而类模块既包含代码又包含数据,可视为没有物理表示的控件。
8.2 变量的作用范围
变量的作用范围确定了能够知晓该变量存在的那部分代码,即变量的作用空间。在一个过程内部声明变量时,只有过程内部的代码才能访问或改变那个变量的值;它有一个范围,对该过程来说是局部的。但是,有时需要使用具有更大范围的变量,例如这样一个变量,其值对于同一模块内的所有过程都有效,甚至对于整个应用程序的所有过程都有效。Visual Basic 允许在声明变量时指定它的范围。
8.2.1 过程级变量
也就是局部变量——在过程内用dim或Static语句声明的变量 或不加声明直接使用的变量 均为过程级变量,只能在本过程中使用,别的过程不可访问.过程级变量在过程被调用时分配存储并初始化,一旦过程执行结束,变量自动释放所分配的存储单元.因此,不同的过程可以有同名的过程级
变量,彼此互不相干.
[例8-1] p166-1.vbp 过程级局部变量示例
Private Sub Form_Activate Dim a As Integer, b As Integer, c As Integer
a 5: b 3
Print Tab 15 ; a; Tab 25 ; b; Tab 35 ; c a×b
Print 调用prod前; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
Call prod
Print 调用prod 后; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
Print
Print 调用sum前; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
Call sum
Print 调用sum后; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
End Sub
Private Sub prod Dim a As Integer, b As Integer, c As Integer
c a * b
Print prod子程序; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
End Sub
Private Sub sum Dim a As Integer, b As Integer, c As Integer
c a + b
Print sum子程序; Tab 14 ; a; Tab 24 ; b; Tab 34 ; c
End Sub
从运行结果可以看出:在事件过程中定义的变量,只在事件过程存在,在调用的过程中定义的同名变量与事件过程中相应的变量没有关系。
8.2.2 模块级变量
在模块的通用段中声明的变量为模块级变量。
1.私有模块级变量
在窗体/模块内通用声明段,过程之外用dim语句或用private语句声明的变量,可被本窗体/模块中的任何过程访问.
2.公有模块级变量
即全局变量,在标准模块中通用
您可能关注的文档
- 3主体结构分部工程质量评估报告1.doc
- 建设项目用地合规性审查指导意见解析.ppt
- 3主体分部工程评估报告.doc
- 第8章(谭浩强C语言第三版)曾怡主讲视频整理.ppt
- 桥梁工程实验报告1.doc
- 3-4章数控加工工艺自检自测.doc
- 第8章(热电式传感器).ppt
- 3公共管理学论文.doc
- 建设项目资本金税后财务基准收益率取值表.doc
- 3分钟学会编现金流量表.doc
- 2025年8月 在全市防汛工作视频会议上的讲话.docx
- 在2025年市委常委班子集中整治问题整改工作专题会议上的讲话+党课:以过硬作风护航高质量发展以实干担当书写新时代“赶考”答卷.pdf
- 国有企业2025年在“贯彻党中央决策部署和国企改革要求方面、全面从严治党责任落实方面、基层党组织建设方面、巡察整改长效机制建设四个方面”巡察整改专题民主生活会存在的原因分析.docx
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.pdf
- 在理论学习中心组巡视整改专题学习研讨会议上的讲话+在省委巡视反馈问题整改部署会上的讲话+工作领导小组会议上的讲话.pdf
- 2篇 2025年在四届区委第十三轮巡察动员部署会议上的讲话.docx
- 2025年国企理论学习中心组巡视巡察专题民主生活会会前学习研讨+(2025年四个方面)巡察整改专题民主生活会个人发言提纲.docx
- 局党组、宣传部、纪委监委关于2025年上半年意识形态工作总结及2025年下半年工作打算.pdf
- 4篇 2025年在学习贯彻《中华人民共和国监察法实施条例》研讨交流会上的发言.pdf
- 在市委理论学习中心组中央城市工作会议精神专题学习研讨会上的发言.+关于传达中央城市工作会议精神的讲话提纲.docx
文档评论(0)