2其他常用的 TO 落句风控件
第10章其他常用的语句及控件 本章主要内容 其他一些常用语句 框架( frame) 滚动条( ScrolLbar 图形方法和图形控件 菜单设计 工具栏和状态栏 键盘与鼠标事件 对话框 通用对话框( Common dialog) 文件系统控件 ★
本章主要内容 其他一些常用语句 框架(Frame) 滚动条(ScrollBar) 键盘与鼠标事件 通用对话框(CommonDialog) 文件系统控件 第10章 其他常用的语句及控件
10.1其他常用语句 10.11强制显式声明变量语句( Option Explicit) 避免因为写错变量名而导致错误 例如,交换变量a、b的值 Temp=a b=Tmp 把Temp写错成Tmp 运行结果是使b的值为0。若改成: Option Explicit 模块级声明 Dim a as integer, b as Integer, Temp as Integer Temp=a a=b b=Tmp 运行时V就会发出警告“ Variable not defined〃(变量未定 义),只有把Tmp改为Temp后才恢复正常
10.1.1 强制显式声明变量语句(Option Explicit) 避免因为写错变量名而导致错误 例如,交换变量a、b的值 Temp=a a=b b=Tmp '把Temp写错成Tmp 运行结果是使b的值为0 Option Explicit '模块级声明 Dim a As Integer,b As Integer,Temp As Integer . . . Temp=a a=b b=Tmp 运行时VB就会发出警告“Variable not defined”(变量未定 义),只有把Tmp改为Temp后才恢复正常 10.1 其他常用语句
10.1.2定义变量类型 格式:Def类型标志字母范围 功能:在模块级声明段中定义变量(相应数据类型) 示例: DefIant n-P 10.1.3自定义数据类型 用户可以利用Type语句定义自己的数据类型 IPrivatePublic Type数据类型名 元素名1As类型名1 元素名2As类型名2 End Type ★
格式:Def类型标志 字母范围 功能:在模块级声明段中定义变量(相应数据类型 ) 示例:DefInt m-P 10.1.3 自定义数据类型 用户可以利用Type [Private|Public] Type 元素名1 As 类型名1 [元素名2 As 类型名2] …… End Type 10.1.2 定义变量类型
Type Rsk rec 编号 As String*3 用汉字表示字段名 姓名 As String*8 性别 As Boolean 出生日期 As Date 基本工资 As Long End Type 这里的 Rsk Reo是一个用户定义的数据记录类型,它由5个 元素(字段)组成 ★
Type Rsk_Rec 编号 As String*3 ’用汉字表示字段名 姓名 As String*8 性别 As Boolean 出生日期As Date 基本工资As Long End Type 这里的Rsk_Rec是一个用户定义的数据记录类型,它由5个 元素(字段)组成
10.1.4定义枚举类型 所谓“枚举”是指将变量的值一一列举出来,变量的值只限 于列举出来的值 IPublic private]Enum枚举类型名 成员名1|=常数表达式] 成员名2=常数表达式 End Enum ★
所谓“枚举”是指将变量的值一一列举出来,变量的值只限 于列举出来的值 [Public|Private] Enum 枚举类型名 成员名1 [=常数表达式] 成员名2 [=常数表达式] …… End Enum 10.1.4 定义枚举类型
例101应用枚举类型示例 输入一个数字表示星期几,判断输出是“休息日”还是“工 作日” Private Enum weekdays 定义 Weekdays为枚举类型 Su un Mon Tue Wed Thu fri Sat End Enum ★
例10.1 应用枚举类型示例 输入一个数字表示星期几,判断输出是“休息日”还是“工 作日” Private Enum weekdays '定义Weekdays为枚举类型 Sun Mon Tue Wed Thu Fri Sat End Enum
Private Sub Command1 Click Dim myday as weekdays 定义 Myday为 Weekdays枚举类型 myday=Ⅴal( InputBox("今天是星期几(0~6)")输入0~6 If myday <Sun Or myday Sat Then MsB0x"输入的星期数错误 Else If myday= Sun Or myday= Sat Then Msg Box"休息日 Else MsB0x工作日 End if End if End sub ★
Private Sub Command1_Click() Dim myday As weekdays '定义Myday为Weekdays枚举类型 myday = Val(InputBox("今天是星期几(0~6)")) '输入0~6 If myday Sat Then MsgBox "输入的星期数错误" Else If myday = Sun Or myday = Sat Then MsgBox "休息日" Else MsgBox "工作日" End If End If End Sub
10.1.5GoTo型控制 包括GoTo语句和 On goTo语句 1.GoTo语句 语法格式:GoTo{行号标号} 功能:改变程序的执行顺序,跳转到程序中指定的行开始执行 例10.2应用G0T语句示例 Private Sub Form Load Show Print"整型数 GoTo Linel 跳转到标号 Linel指定的行 Print"单精度数 Linel Print"字符串 ★ End sub
包括GoTo语句和On...GoTo语句 1. GoTo语句 语法格式:GoTo {行号|标号} 功能:改变程序的执行顺序,跳转到程序中指定的行开始执行 例10.2 应用GoTo语句示例 Private Sub Form_Load() Show Print "整型数" GoTo Line1 '跳转到标号Line1指定的行 Print "单精度数" Line1: Print "字符串" End Sub 10.1.5 GoTo型控制
2.On.G0T0语句 On. GoTo语句用来实现分支选择控制(类似于 Select. End Select) 语法格式:On数值表达式Goo{行号表标号表} 功能:根据“数值表达式”的值,控制转移到几个指定的语句 行中的一个语句行。 例如 On K GoTo Linel Line2 Line3 执行过程:将K四舍五入取整,如果其值为1,则转移到 Linel 标号行;如果为2,则转移到Line2标号行;如果为3,则转移到 Iine3标号行。如果K的值等于0或大于3,则自动执行本语句的 下一个语句 ★
2. On...GoTo语句 On...GoTo语句用来实现分支选择控制(类似于Select...End Select) 语法格式:On 数值表达式 GoTo {行号表|标号表} 功能:根据“数值表达式”的值,控制转移到几个指定的语句 行中的一个语句行。 例如 On K GoTo Line1, Line2, Line3 执行过程:将K四舍五入取整,如果其值为1,则转移到Line1 标号行;如果为2,则转移到Line2标号行;如果为3,则转移到 Line3标号行。如果K的值等于0或大于3,则自动执行本语句的 下一个语句