
第3章应用程序接口设计及代码偏写 1,变量有什么作用? 数值存入内存后,必颈用某种方式访问它,系饶才能对其进行指定的操作。在B中可 以用名字表示内存位置,这样就能访问内存中的数那。一个有名称的内存位置称为变量,和 其也语言一样。VB也用变量来存储数据值。每个变量都有一个名字和相应的数据类型。通 过名字来引用一个变量,面数据类型则决定了该变量的存储方式。 2.什么是V1t(变体型)数据类型?为什么有了胃ar1nt变量还要使用其他的英型 变量7 在VB中,如果没有声明数据类型,则默认变量的数据类型为Variant。Variant数据类 型可在不同场合代表不同的数据类型,当指定变量为Yariant变量时,不必在数据类型之间 进行转换,B会自动完成各种必要的转换。因而有人在编程中经常采用不说明变量就直接 使用的习惯,认为这样做不影响计算结果.实际上这是一种很不好的工作习惯.其一,Variant 变量的存储空间比其他变量长,违成了内存资源的浪费,也影响了计算速度:其二,由于通 篇程序代码都采用Yar1ant变量,降低了程序的可读性,增加了交流和修改程序的困难。 3.怎样给b中变量名命名? 变量名的命名规则是:变量名的长度为55个字符以内,第一个字符是字母,其后可以 是字母、数字和下划线的组合,最后一个字符也可以是类型说明符。通常使用具有一定含义 的变量名,可以帮助说明功能,简化调试过程。保留字不能作为变量名。 4.变量类型有哪些?如何定义了 B中变量都属于一定的数据类型,包括基本数据类型和用户定义数据类型。在VB中, 可以用下面几种方式来规定变量的类型: (1)用类型符米标识 把类型符放在变量的尾部,米说明变量的不同类型,类型说明如下: 号表示整型 表表示长整型 【表示单精度型 年表示双精皮型 。表示通用型 等表示字符型
第 3 章 应用程序接口设计及代码编写 1.变量有什么作用? 数值存入内存后,必须用某种方式访问它,系统才能对其进行指定的操作。在 VB 中可 以用名字表示内存位置,这样就能访问内存中的数据。一个有名称的内存位置称为变量。和 其他语言一样,VB 也用变量来存储数据值。每个变量都有一个名字和相应的数据类型,通 过名字来引用一个变量,而数据类型则决定了该变量的存储方式。 2.什么是 Variant(变体型)数据类型?为什么有了 Variant 变量还要使用其他的类型 变量? 在 VB 中,如果没有声明数据类型,则默认变量的数据类型为 Variant。Variant 数据类 型可在不同场合代表不同的数据类型。当指定变量为 Variant 变量时,不必在数据类型之间 进行转换,VB 会自动完成各种必要的转换。因而有人在编程中经常采用不说明变量就直接 使用的习惯,认为这样做不影响计算结果。实际上这是一种很不好的工作习惯。其一,Variant 变量的存储空间比其他变量长,造成了内存资源的浪费,也影响了计算速度;其二,由于通 篇程序代码都采用 Variant 变量,降低了程序的可读性,,增加了交流和修改程序的困难。 3. 怎样给 vb 中变量名命名? 变量名的命名规则是:变量名的长度为 255 个字符以内,第一个字符是字母,其后可以 是字母、数字和下划线的组合,最后一个字符也可以是类型说明符。通常使用具有一定含义 的变量名,可以帮助说明功能,简化调试过程。保留字不能作为变量名。 4. 变量类型有哪些?如何定义? VB 中变量都属于一定的数据类型,包括基本数据类型和用户定义数据类型。在 VB 中, 可以用下面几种方式来规定变量的类型: (1)用类型符来标识 把类型符放在变量的尾部,来说明变量的不同类型,类型说明如下: % 表示整型 & 表示长整型 ! 表示单精度型 # 表示双精度型 @ 表示通用型 $ 表示字符型

2在定义变量时指定其类亚 在使用变量前,可以用下列格式来说明其类型和作用线: (说明关键字)《变量)As《类座》 5,在不同的过程中,名字相同的局部变量有什么关系? 在过程(事件过程或通用过程)内定文的变量叫做局部变量,其作用是它所在的过程, 局部变量通常用米存放中问结果成用作整时变量,某一过程的执行只对德过程内的变量产生 作用,对其他过程中相同名字的局部变量没有任何影响。因此,在不再的过程中,可以定义 相同名字的同部变量,他们之间没有任何关系。可以理解为,局部变量贝与他所在的位置有 关,而与其名字无关,局部变量通过Din和Statie关键字定复。 6.什么是棋块变量和全局变量? 窗体级和模块级变量是指在窗体或模块内部声明的变量,其作用域是整个窗体或模块。 只有在该窗体或横块中的代码才旋访问这个变量,离开这个模块或窗体,该变量就不起作用 了,例如窗体F1m1模块中的变量不能用于窗体F配颅块。该变量的生金周期是整个窗体 或模块,在窗体模块代码编辑卷的顶部用Private关键字声明. 全局变量可用于工程的每个核块、每个过程,全同变量必领用Pb11c语句声明,不能 用Dim语句和P肛1vate语句声明。全局变量只能在标注楠块中声明。不能在过程或窗体柄块 中声明。 T。怎样声明局部变量和窗体级变量,两者的区则是什么? 在B程序中。除了大量的控件对象外,还要使用一些变量,暂时存放一些中间结果。 这些变量的声明可以放在过程外的“通用声明”段(称为窗体圾变量》,也可以放在过程中 (称为局部变量)。 两者区别:窗体级变量在本窗体的所有过程中均可使用:而局部变量仅在变量所在的过 程中可使用,也即随着本过程的执行而分配存储空间,当执行到dSb语句,分配的内存 空间目收,变量的值也丢失。 8.。如何设置自动窗体? 如果一个工程中包括多个窗体,如果没有特别的设定,应用程序的第一个窗体默认为启 动窗体,也就是当应用程序开始运行时,先运行这个窗体。如果要改变系饶赋认的启动窗体 可以通过“工程属性”对话框进行设置,其操作步骤如知下: (和》在“工程”装单中,选择“属性”命令,屏幕出现“工程属性”对话框。 2》在对话框中选择“通用”选项卡
(2)在定义变量时指定其类型 在使用变量前,可以用下列格式来说明其类型和作用域: As 5. 在不同的过程中,名字相同的局部变量有什么关系? 在过程(事件过程或通用过程)内定义的变量叫做局部变量,其作用是它所在的过程, 局部变量通常用来存放中间结果或用作临时变量,某一过程的执行只对该过程内的变量产生 作用,对其他过程中相同名字的局部变量没有任何影响。因此,在不同的过程中,可以定义 相同名字的局部变量,他们之间没有任何关系。可以理解为,局部变量只与他所在的位置有 关,而与其名字无关。局部变量通过 Dim 和 Static 关键字定义。 6. 什么是模块变量和全局变量? 窗体级和模块级变量是指在窗体或模块内部声明的变量,其作用域是整个窗体或模块。 只有在该窗体或模块中的代码才能访问这个变量,离开这个模块或窗体,该变量就不起作用 了,例如窗体 Form1 模块中的变量不能用于窗体 Form2 模块。该变量的生命周期是整个窗体 或模块,在窗体模块代码编辑器的顶部用 Private 关键字声明。 全局变量可用于工程的每个模块、每个过程。全局变量必须用 Public 语句声明,不能 用 Dim 语句和 Private 语句声明。全局变量只能在标注模块中声明,不能在过程或窗体模块 中声明。 7. 怎样声明局部变量和窗体级变量,两者的区别是什么? 在 VB 程序中,除了大量的控件对象外,还要使用一些变量,暂时存放一些中间结果。 这些变量的声明可以放在过程外的“通用声明”段(称为窗体级变量),也可以放在过程中 (称为局部变量)。 两者区别:窗体级变量在本窗体的所有过程中均可使用;而局部变量仅在变量所在的过 程中可使用,也即随着本过程的执行而分配存储空间,当执行到 End Sub 语句,分配的内存 空间回收,变量的值也丢失。 8. 如何设置启动窗体? 如果一个工程中包括多个窗体,如果没有特别的设定,应用程序的第一个窗体默认为启 动窗体,也就是当应用程序开始运行时,先运行这个窗体。如果要改变系统默认的启动窗体, 可以通过“工程属性”对话框进行设置,其操作步骤如下: (1)在“工程”菜单中,选择“属性”命令,屏幕出现“工程属性”对话框。 (2)在对话框中选择“通用”选项卡

③》在“启动对象”的下拉列表框中,选择新的启动对象,单击“确定”按组,完成新 设定的窗体为启动窗体 9.什么是Sub Main过程? 在一个含有多个窗体的应用程序中,有时候需要在显示多个密体之前对一些条件进行初 始化,这就需要在启动程序到执行一个特定的过程。在B中,这样的过程称为启动过程, 并金名为Sbin。如果有Sab幽in过程,VB并不自动把它作为启动过程,经须通过与设 置启动窗体类似的方法把它指定为启动过程。 10.如何遭立Sub Main过程? 过程在标准模块窗口中建立,其方法是:执行“工程”菜单中的“添加模块”命令,打 开标准模块窗口,在该窗口中键入: Sub Main 然后按Etr健,将显示该过程的开头和结束语句,之后即可在两个语句之间输入程序 代码。 S纳a1n过程位于标准核块中,一个工程可以含有多个标准模块,但Suba1n过程只 有一个。 11,如何实观阳多窗体的加载、显示、隐戴和年载? 在集成开发环境中,使用“工程\添如窗体“菜单,凳可以在一个工程中使用多个窗体 被设置为启动对象的窗体在程序运行之初会棱自动加载和是示,但是只使在工程属性中设置 一个窗体模块为启动对象。当启动对象是Sban过程时,要显示富体或当暴示一个窗体 后再显示其他的窗体,就要考虑窗体的加载、显示、隐煮和卸载问题。 (1)如载应体 加截窗体使用L0ad语句。 格式:oadK窗体名》 功能:加载窗体到内存。 说明:加我窗体只是将这个窗体对象装入内存,但并不显示这个窗体对象。此语句只是 需要在初始化时加载所有的窗体并在以后香要它们的时候显示。当B如载窗体时,先把窗 体的各属性设置为初始值,再执行L0ad事件, (2)显示窗体 显示一个窗体瓷要把它的Visb1e属性设置为Te。显示一个窗体还可以用窗体对象 的Sham方法
(3)在“启动对象”的下拉列表框中,选择新的启动对象,单击“确定”按钮,完成新 设定的窗体为启动窗体 9. 什么是 Sub Main 过程? 在一个含有多个窗体的应用程序中,有时候需要在显示多个窗体之前对一些条件进行初 始化,这就需要在启动程序时执行一个特定的过程。在 VB 中,这样的过程称为启动过程, 并命名为 Sub Main。如果有 Sub Main 过程,VB 并不自动把它作为启动过程,必须通过与设 置启动窗体类似的方法把它指定为启动过程。 10. 如何建立 Sub Main 过程? 过程在标准模块窗口中建立,其方法是:执行“工程”菜单中的“添加模块”命令,打 开标准模块窗口,在该窗口中键入: Sub Main 然后按 Enter 键,将显示该过程的开头和结束语句,之后即可在两个语句之间输入程序 代码。 Sub Main 过程位于标准模块中,一个工程可以含有多个标准模块,但 Sub Main 过程只 有一个。 11. 如何实现 VB 多窗体的加载、显示、隐藏和卸载? 在集成开发环境中,使用“工程\添加窗体”菜单,就可以在一个工程中使用多个窗体。 被设置为启动对象的窗体在程序运行之初会被自动加载和显示,但是只能在工程属性中设置 一个窗体模块为启动对象。当启动对象是 Sub Main 过程时,要显示窗体或当显示一个窗体 后再显示其他的窗体,就要考虑窗体的加载、显示、隐藏和卸载问题。 (1)加载窗体 加载窗体使用 Load 语句。 格式:Load 功能:加载窗体到内存。 说明:加载窗体只是将这个窗体对象装入内存,但并不显示这个窗体对象。此语句只是 需要在初始化时加载所有的窗体并在以后需要它们的时候显示。当 VB 加载窗体时,先把窗 体的各属性设置为初始值,再执行 Load 事件。 (2)显示窗体 显示一个窗体就要把它的 Visible 属性设置为 True。显示一个窗体还可以用窗体对象 的 Show 方法

格式:[窗体名,]Show 功能:将窗体最示在屏移上。 说明:如果在调用一个窗体的Sm方法时,指定的窗体尚未加载。闭将自动装载该窗 棒 (3)随撒官体 把一个窗体的Yisible属性设置为False或使用它的Hie方法。就可以把窗体隐藏。 格式:[窗体名.]ide 功能:将窗体隐藏起米。 说明:隐藏窗体并不把窗体从内存中卸载,只是变得不可见。在使用V1s6】日属性或 Hde方法隐藏官体时,如果窗体尚未加载,则B会如载该窗体,但不会让它显示出来。 (4)卸载窗体 窗体用完后可以卸载窗体,要用unload语句。mload语句的语法格式与0ad语句相 同。 格式:=oad窗体名) 功能:将窗体从内存中卸载下米。 说明:当卸载一个窗体到它的子窗体也会被却载。 12,当循环(h11end蕾环)和Do循环(Do-Loop循环)有什么区别T 几乎没有区别,只是D0循环在结构化与适应性方面比当循环更强一些。 13,如何理解D6循环(①0o0p领环)中的“循环条件”? 在D▣循环中,“循环条件”决定循环是止还是推续。D6循环的“循环条件”用于 hile和ntil的后面,Exit Do的前面。 在循环体中,当执行ExtD山语句后则强行退出循环。 h11e和t11可以置于o成0op的后面。无论它们的位置如何,无论它们的位置如 何,倘若hile后面的“循环条作”为True,则继续执行循环体,香则退出循环,相反, ntil后面的“循环条作”为T四e,则是出循环,否则继续执行循环体。至于在D▣循环中 使用hi1e还是tI。应该视编程的内容和条件而定,一般条件下它们可以通用。只是其 循环条件相反。 14,在使用多重循环时,一靓需要注意厚些问愿? 一最应注意以下问题: (1)循环次数为各层循环次数乘积。如果内层循环中的初值、终值和步长植用到了外
格式:[窗体名.]Show 功能:将窗体显示在屏幕上。 说明:如果在调用一个窗体的 Show 方法时,指定的窗体尚未加载,VB 将自动装载该窗 体。 (3)隐藏窗体 把一个窗体的 Visible 属性设置为 False 或使用它的 Hide 方法,就可以把窗体隐藏。 格式:[窗体名.]Hide 功能:将窗体隐藏起来。 说明:隐藏窗体并不把窗体从内存中卸载,只是变得不可见。在使用 Visible 属性或 Hide 方法隐藏窗体时,如果窗体尚未加载,则 VB 会加载该窗体,但不会让它显示出来。 (4)卸载窗体 窗体用完后可以卸载窗体,要用 unload 语句。unload 语句的语法格式与 Load 语句相 同。 格式:unLoad 功能:将窗体从内存中卸载下来。 说明:当卸载一个窗体时它的子窗体也会被卸载。 12. 当循环(While-Wend 循环)和 Do 循环(Do-Loop 循环)有什么区别? 几乎没有区别,只是 Do 循环在结构化与适应性方面比当循环更强一些。 13. 如何理解 Do 循环(Do-Loop 循环)中的“循环条件”? 在 Do 循环中,“循环条件”决定循环是终止还是继续。Do 循环的“循环条件”用于 While 和 Until 的后面,Exit Do 的前面。 在循环体中,当执行 Exit Do 语句后则强行退出循环。 While 和 Until 可以置于 Do 或 Loop 的后面,无论它们的位置如何,无论它们的位置如 何,倘若 While 后面的“循环条件”为 True,则继续执行循环体,否则退出循环。相反, Until 后面的“循环条件”为 True,则退出循环,否则继续执行循环体。至于在 Do 循环中 使用 While 还是 Until,应该视编程的内容和条件而定,一般条件下它们可以通用,只是其 循环条件相反。 14. 在使用多重循环时,一般需要注意哪些问题? 一般应注意以下问题: (1)循环次数为各层循环次数乘积。如果内层循环中的初值、终值和步长值用到了外

层循环的循环变量,则要谨慎计算稀环次数。 (2)For-Next循环和Do循环可以相互嵌套,但不修相互交义使用, (3)出口语句促x1t)只能退出该层循环,并不一定能出整个循环。 (4)将计算变量鼠初值的语句至于多重循环的哪一层位置。对其计算结果将会产生很 大的影响
层循环的循环变量,则要谨慎计算循环次数。 (2)For-Next 循环和 Do 循环可以相互嵌套,但不能相互交叉使用。 (3)出口语句(Exit)只能退出该层循环,并不一定能退出整个循环。 (4)将计算变量赋初值的语句至于多重循环的哪一层位置,对其计算结果将会产生很 大的影响