VisualBasic设计过程.ppt

上传人:sh****n 文档编号:6559843 上传时间:2020-02-29 格式:PPT 页数:60 大小:523.86KB
返回 下载 相关 举报
VisualBasic设计过程.ppt_第1页
第1页 / 共60页
VisualBasic设计过程.ppt_第2页
第2页 / 共60页
VisualBasic设计过程.ppt_第3页
第3页 / 共60页
点击查看更多>>
资源描述
第8章过程 8 1子过程8 2函数过程8 3参数传递8 4过程的应用8 5键盘和鼠标事件过程8 6本章小结8 7上机实训 结束 8 1子过程 8 1 1通用过程的定义8 1 2子过程的调用 返回首页 8 1 1通用过程的定义 1 1 通用过程的语法格式通用过程的语法格式如下 Public Private Static Sub过程名 形参表 局部变量或常数声明 语句块 ExitSub 语句块 EndSub 8 1 1通用过程的定义 2 说明 1 Public Private 可选 指定过程的作用范围 若省略 则默认为Public 全局 2 Static 可选 指定本过程内的所有局部变量均为静态变量 3 过程名 命名规则与变量命名规则相同 无参数时 过程名后的括号不能省略 4 形参表 形参表类似于变量声明 指明本过程被调用时传送给本过程的变量个数和类型 若有多个变量 各变量之间用逗号间隔 形参表中出现的参数称为形式参数 简称形参 每个形参的格式为 ByVal ByRef 形参名 As类型 8 1 1通用过程的定义 3 ByVal表示该参数按值传递 ByRef表示该参数按地址传递 默认 形参名必须是合法的变量名或数组名 后面加括号 类型代表该参数的数据类型 默认为Variant 不能用定长字符串变量或定长字符串数组作为形式参数 但是可以在调用过程时用简单定长字符串变量作为 实际参数 VB将其转换为变长字符串变量传递给过程 5 ExitSub语句表示立即退出子过程 通常将其置于选择结构中 6 在过程内不能再定义过程 但可以调用其他过程 8 1 1通用过程的定义 4 2 通用过程的创建创建通用过程有两种方法 使用 添加过程 对话框 直接在代码编辑器窗口中输入过程代码 1 使用 添加过程 对话框步骤如下 打开要添加过程的代码编辑器窗口 执行 工具 菜单 添加过程 命令 打开如图8 1所示的 添加过程 对话框 8 1 1通用过程的定义 5 在 名称 文本框中输入过程名 在 类型 框架中选择过程类型 其中 子程序 表示建立Sub过程 函数 表示建立Function过程 在 范围 框架中选择范围 相当于使用Public或Private关键字 单击 确定 按钮后 在代码编辑器窗口中将出现如图8 2所示的过程模板 2 直接在代码编辑器窗口中输入在代码编辑器窗口中 将插入点放在已有过程的外面 按照规定的语法格式输入过程名和参数 系统会自动产生最后一行语句EndSub 8 1 1通用过程的定义 6 图8 1 添加过程 对话框图8 2过程模板 返回首页 返回本节 返回 8 1 2子过程的调用 1 子过程的Sub与EndSub之间的语句序列称为过程体 每次调用子过程都会执行过程体中的语句 在程序中 既可以调用通用过程 也可以调用事件过程 1 调用通用过程调用子过程有两种方法 使用Call语句 直接使用过程名 语法格式如下 Call过程名 实参表 或者 过程名 实参表 8 1 2子过程的调用 2 说明 1 实参表是实际参数 简称实参 列表 若有多个参数 参数之间要用逗号间隔 各实参与形参在参数列表中的位置相互对应 实参与对应位置的形参必须是同一类型 可以是常数 变量 数组元素或表达式 2 当用Call语句调用子过程时 若有参数 则参数必须放在圆括号内 若无参数 则省略过程名后的圆括号 3 若不使用Call关键字 则过程名后不能加括号 若有参数 则参数直接跟在过程名之后 参数与过程名之间用空格间隔 参数与参数之间用逗号间隔 8 1 2子过程的调用 3 例8 1 编写一个计算圆面积和周长的通用过程 在窗体的单击事件中通过InputBox函数输入圆的半径 然后调用该过程计算圆面积和周长 计算结果通过消息对话框输出 程序运行结果如图8 3所示 代码详见教材 图8 3计算圆面积和周长 8 1 2子过程的调用 4 例8 2 创建一个简单的文本编辑程序 利用通用过程控制用于编辑操作的命令按钮的有效状态 Enabled属性 运行界面如图8 4所示 左图为选定文本后的状态 右图为单击 复制 按钮后的状态 图8 4子过程示例 8 1 2子过程的调用 5 在窗体上放置一个文本框 名称为txtEdit 设其Text属性为空 MultiLine属性为True ScrollBars属性为2 添加三个命令按钮 名称分别为cmdCut cmdCopy和cmdPaste 设置Caption属性均为空 Enabled属性均为False Style属性均为1 图形 通过Picture属性为它们各设置一幅图片 设ToolTipText 工具提示文本 属性分别为 剪切 复制 和 粘贴 再添加一个命令按钮cmdExit 设置其Caption属性为 退出 编程思路 编制一个通用过程CtlEnabled blnEnAsBoolean 形参blnEn为逻辑型 由于控件的Enabled属性也是逻辑型 因此在程序运行时 根据用户的不同操作 将实参设为True或False 传递给通用过程 即可控制各编辑按钮的Enabled属性 代码详见教材 8 1 2子过程的调用 6 2 调用事件过程在程序中不仅可以调用通用过程 也可以调用事件过程 二者的语法格式相同 例如 执行窗体加载事件过程中的语句Form Load 或 CallForm Load 调用命令按钮cmdAdd的单击事件过程cmdAdd Click 或 CallcmdAdd Click调用事件过程实际上就是执行事件过程中的语句序列 如同通用过程一样 亦可起到复用和简化代码的作用 8 2函数过程 8 2 1函数过程的定义8 2 2函数过程的调用Function 函数 过程也是独立的过程 可读取参数 执行一系列语句并改变其参数的值 这一点与前面介绍的Sub过程相同 Function过程与子过程不同的是 子过程没有返回值 只能作为独立的基本语句被调用 不能出现在表达式中 而Function过程有返回值 既可以出现在表达式中 也可以作为独立的语句被调用 返回首页 8 2 1函数过程的定义 1 函数过程的定义与子过程的定义相似 不同的是 由于函数过程可以返回一个值 因此要在定义中加入返回值类型说明 语法格式为 Private Public Static Function函数名 形参表 As类型 语句块 函数名 表达式 ExitFunction 语句块 函数名 表达式 EndFunction 8 2 1函数过程的定义 2 说明 1 函数名 即函数过程的名称 命名规则与变量相同 2 As类型 指定函数过程返回值的类型 可以是Integer Long Single Double Currency String或Boolean 若省略 则默认的数据类型为Variant 3 表达式 的值是函数返回的结果 通过赋值语句将其赋给函数名 若在函数过程中省略 函数名 表达式 则该过程返回一个默认值 数值函数过程返回0 字符串函数返回空字符串 因此 为了能使一个函数过程完成所指定的操作并获取返回值 通常要在过程中为函数名赋值 4 在过程体中 可以使用一个或多个ExitFunction语句退出函数 5 函数过程语法中其他部分的含义与子过程相同 8 2 1函数过程的定义 3 与子过程一样 可以在 代码编辑器 窗口中直接输入代码来创建函数过程 也可以使用 添加过程 对话框来创建函数过程 只是在选择类型时要选择 函数 例如 以下函数RectArea可计算并返回矩形的面积 PrivateFunctionRectArea aAsSingle bAsSingle AsSingleRectArea a bEndFunction 返回首页 返回本节 8 2 2函数过程的调用 1 函数过程通常在表达式中调用 也可以作为独立的语句被调用 1 在表达式中调用格式 函数名 实参表 这种调用方式与大部分VB内部函数的调用相同 即将函数名及其实参写在表达式中 例如 以下语句均可调用前面8 2 1小节中计算矩形面积的函数过程 S RectArea 3 5 Print 矩形面积为 RectArea 6 8 MsgBox 矩形面积为 RectArea 3 4 8 2 2函数过程的调用 2 2 以独立语句形式调用调用的格式与Sub过程相同 例如 CallRectArea 2 7 RectArea2 7当用这种方式调用函数过程时 VB放弃函数的返回值 实际上 有些VB内部函数也可采用这种忽略返回值的调用方式 此时常将某某函数称为某某语句 其中较典型的内部函数有MsgBox Shell等 8 2 2函数过程的调用 3 例如 以下语句均可打开Windows记事本程序 Shell函数用于运行一个可执行文件 函数形式x Shell C Windows Notepad exe 1 语句形式CallShell C Windows Notepad exe 1 Shell C Windows Notepad exe 1 8 2 2函数过程的调用 4 例8 3 计算1 10阶乘之和 运行结果如图8 5所示 思路 首先编制一个求阶乘 N 的函数过程 在窗体的单击事件中调用此过程 依次求出1 2 10 的值 并将其累加 代码如下 求阶乘 N 的函数过程PrivateFunctionFactorial NAsInteger AsLongDimiAsInteger pAsLongp 1Fori 1ToNp p i 累乘NextFactorial p 对函数名赋值 返回函数值EndFunction 8 2 2函数过程的调用 5 PrivateSubForm Click 单击窗体DimSumAsLong iAsInteger 在循环中调用函数过程求1 10的阶乘并累加Fori 1To10Sum Sum Factorial i NextPrint 1 2 10 Sum 显示结果EndSub 8 2 2函数过程的调用 6 例8 4 求多个数的最大公约数 程序运行结果如图8 6所示 思路 首先编写一个用辗转相除法求两个数的最大公约数的函数过程 通过多次调用该函数过程 求出多个数的最大公约数 具体做法是先求出前两个数的最大公约数 将所得最大公约数与第三个数求最大公约数 以此类推 直至求出所有数的最大公约数 在计算过程中 只要出现最大公约数为1 即不必再对后续的其他数求公约数 8 2 2函数过程的调用 7 1 设计界面及设置属性在窗体上添加一个图片框Picture1 设背景色为白色 AutoRedraw属性为True 添加三个命令按钮 Caption属性分别为 开始 清除 和 退出 2 编写代码创建一个函数过程GCD 该函数过程含有两个形参m和n 均为Long型 用于传送拟求最大公约数的两个数 在函数过程中用辗转相除法求出最大公约数作为返回值 8 2 2函数过程的调用 8 在 开始 按钮的单击事件中 定义一个动态数组 用InputBox函数获取用户欲求最大公约数的数字个数 以该数值定义动态数组的上界 再通过For循环 用InputBox函数将每个数存入数组 并在图片框中显示各数 计算多个数的最大公约数时仍然采用For循环 循环次数 数字个数 1 在循环中依次取出动态数组中的数字 调用GCD函数过程计算 计算结束后将计算结果显示在图片框中 代码详见教材 返回首页 返回本节 8 3参数传递 8 3 1传值与传址8 3 2对象参数 返回首页 8 3 1传值与传址 1 1 传值在定义过程时 如果形参使用关键字ByVal声明 则规定了在调用此过程时 该参数将按值传递 传值 调用过程时 传递给形参的只是调用语句中实参的值 即把调用语句中实参的值复制给子过程或函数过程中的形参 若在被调过程中改变了形参的值 不会影响到实参的值 当被调过程结束并返回调用它的过程后 实参的值还是调用前的值 传值方式可以用一个比喻来说明 假设我有一篇好文章 朋友要看 我把文章复印一份给他 他可以任意在副本上画重点 做标记甚至修改 对我手头的文章不会有任何影响 8 3 1传值与传址 2 2 传址在VB6 0中 传址是默认的参数传递方式 即形参前不使用任何关键字 相当于用ByRef声明形参 传址方式也可以用前面的比喻来说明 传址就像直接把文章借给朋友 如果他在上面画重点 做标记甚至修改 当他把文章还回来时 已经是面目全非了 在调用一个过程时 如果用传址方式进行参数传递 则会将实参的内存地址传递给形参 即让形参和实参使用相同的内存单元 因此 在被调过程中对形参的任何操作都变成了对相应实参的操作 实参的值就会随形参改变 8 3 1传值与传址 3 例8 5 分别使用传址和传值两种方式编写实现两数交换的子过程 要求分别显示两种方式下实参与形参的变化 在窗体上放置两个单选按钮 设置Caption属性分别为 传址 和 传值 运行结果如图8 9和图8 10所示 比较两图可以看出 采用传址方式时 主调过程 窗体单击事件过程 中的变量a和b实现了数据交换 而采用传值方式时 a和b无变化 返回首页 返回本节 8 3 2对象参数 1 在VB中 可以将窗体 控件等对象传递给过程 用对象作为参数与用其他数据类型作为参数的过程在语法格式上相同 只需将参数声明为特定对象类型即可 这里的 对象类型 是指对象所属的类 窗体和控件所属的类可以在属性窗口的对象下拉列表框中看到 在图8 11所示的属性窗口中 鼠标指针所指处是名称为txtChn的文本框对象所属的类TextBox 调用含有对象参数的过程时 需要将实参设置为对象名称 该对象必须与形参的类型相同 并且采用传址方式 8 3 2对象参数 2 例8 6 编制一个计算平均成绩的程序 当用户输入的分数超出规定范围 0 100 时 焦点返回出错的文本框并全选其内容 以便让用户修改或重新输入 运行结果如图8 12和图8 13所示 图8 12输入错误图8 13输入正确 8 3 2对象参数 3 1 设计界面和设置属性在窗体上添加三个文本框 名称分别为txtChn txtMath和txtEng Text属性均为空 HideSelection属性均为False 添加四个标签 均采用默认名称 Caption属性分别为 语文 数学 英语 和 平均 再添加一个标签 名称为lblAver BorderStyle属性为1 Caption属性为空 背景色为白色 用于显示平均分 添加三个命令按钮 名称分别为cmdCalc cmdClear和cmdExit Caption分别为 计算 清除 和 退出 8 3 2对象参数 4 2 编写代码建立一个通用过程TxtSetFocus 形参类型为TextBox 如 PrivateSubTxtSetFocus txtXAsTextBox 在过程中 形参代表的是被传入的文本框对象 通过该形参可引用文本框对象的所有属性和方法 在 计算 按钮的单击事件中检查用户的输入 若输入有误 将出错的文本框作为实参传给通用过程 使焦点返回该文本框并全选其内容 详细代码见教材 返回首页 返回本节 8 4过程的应用 8 4 1过程的作用范围8 4 2标准模块与SubMain过程 返回首页 8 4 1过程的作用范围 1 1 模块级过程模块级过程是在某个模块内 用关键字Private定义的子过程或函数过程 这种过程只能被本模块内的过程调用 即其作用域为本模块 2 全局过程全局过程是在某个模块内用关键字Public 或省略范围 定义的子过程或函数过程 这种过程可被整个工程内的所有过程调用 即其作用域为整个工程 8 4 1过程的作用范围 2 定义全局过程有如下两种方法 1 在当前工程中添加标准模块 bas 在标准模块中用关键字Public定义通用过程或函数过程 该过程可以被其他窗体中的过程直接调用 2 在某窗体中添加Public类型的通用过程 当其他窗体调用此过程时 需要在过程名前添加窗体名 即 Call窗体名 过程名此外 如果定义过程时在过程名前面使用了Static关键字 则表示在本过程内声明的局部变量均为静态变量 返回首页 返回本节 8 4 2标准模块与SubMain过程 1 1 标准模块标准模块保存在扩展名为 bas的文件中 在标准模块中用Public关键字声明的变量 常数 类型 过程等可以供应用程序中的其他模块和本模块访问 因此 标准模块常被称为过程和声明的容器 使用标准模块能够提高代码的可复用程度 例如 在前面的示例中 通用过程TxtSetFocus中未使用具体的对象名称 完全可以从窗体模块中独立出来 放到标准模块中 用Public声明 这样 当程序中有多个窗体时 各窗体模块均可直接调用该过程 而不必重复编写代码 8 4 2标准模块与SubMain过程 2 在工程中添加标准模块的方法为 执行 工程 菜单中的 添加模块 命令 在 添加模块 对话框的 新建 选项卡中选择 模块 单击 打开 按钮 即可在工程中添加一个默认名称为Module1的标准模块 标准模块没有窗体 只有代码 在标准模块中输入代码的方法与窗体模块相同 8 4 2标准模块与SubMain过程 3 2 SubMain过程在较复杂的应用程序中 有时需要在启动时暂不加载任何窗体 先进行一些初始化工作 这就需要在程序启动时执行一个特定的过程 这一过程称为SubMain过程 位于标准模块中 一个工程只能有一个SubMain过程 将SubMain过程设置为启动对象的方法为 执行 工程 菜单 工程属性 命令 在打开的 工程属性 对话框中选择 通用 选项卡 然后在 启动对象 组合框中选择 SubMain 并单击 确定 按钮 8 4 2标准模块与SubMain过程 4 例如 以下代码可根据用户输入的登录码决定显示哪一个窗体 PublicSubMain 本过程为启动对象DimInpAsStringInp InputBox 请输入登录码 IfInp 123 ThenForm1 ShowElseIfInp 456 ThenForm2 ShowEndIfEndSub 返回首页 返回本节 8 5键盘和鼠标事件过程 8 5 1键盘事件过程8 5 2鼠标事件过程 返回首页 8 5 1键盘事件过程 1 1 KeyPress事件当一个对象具有焦点时 用户按下再松开一个可返回ASCII码的按键时触发该事件 KeyPress键盘事件过程语法格式如下 PrivateSub对象 KeyPress IndexAsIntrger KeyAsciiAsInteger 说明 1 对象 响应事件的对象 窗体用Form 其他控件用控件名 2 Index 当对象为控件数组时 此参数是控件数组元素下标 8 5 1键盘事件过程 2 3 KeyAscii 返回按键对应的ASCII码 整数 若改变它的值可以给对象发送一个不同的字符 将它改变为0时 将取消按键 对象接收不到字符 4 该事件可以引用任何可打印的键盘字符 包括大小写字母 数字 标点 运算符以及Enter Backspace Tab和Esc键等 对方向键等不产生ASCII码的按键无响应 5 KeyPress键盘事件过程在截取TextBox或ComboBox控件中的按键时非常有用 它可以立即测试按键的有效性或在字符输入时对其进行格式处理 8 5 1键盘事件过程 3 例8 7 利用KeyPress事件限制用户输入合法数据 本例对8 3节中的例8 6略作改进 限制用户输入成绩时只能输入数字和小数点 而且小数点只允许输入一次 由于三个文框处理按键的代码相似 所以将其编制为自定义函数过程NumKey 形参为文本框对象和按键的ASCII码 在文本框的KeyPress事件中调用该函数 调用形式为 NumKey 文本框对象 KeyAscii 8 5 1键盘事件过程 4 函数过程 限制用户只能输入数字和小数点 形参为文本框对象和按键的ASCII码 PrivateFunctionNumKey txtXAsTextBox KeyXAsInteger 48 57 46和8分别为 0 9 和回删键 Backspace 的ASCII码 IfKeyX 48AndKeyX0ThenNumKey 0EndFunction 8 5 1键盘事件过程 5 2 KeyDown和KeyUp事件当一个对象具有焦点时 按下一个键时触发KeyDown事件 松开一个键时触发KeyUp事件 KeyDown和KeyUp键盘事件过程语法格式为 PrivateSub对象 KeyDown KeyUp IndexAsInteger KeyCodeAsInteger ShiftAsInteger 说明 1 KeyCode 键代码 如vbKeyF5 F5键 vbKeyHome Home键 Keycode用来表示物理键 不区分字母的大小写 要辨别ASCII字符 应使用KeyPress事件 8 5 1键盘事件过程 6 2 Shift 是一个位域参数 用3位二进制数表示键盘事件发生时 是否按下了键盘上的Shift Ctrl和Alt键 如教材表8 1所示 请注意区分Shift参数与Shift键 不同Shift码值相加可表示按键组合 如6 2 4 表示同时按下了Ctrl和Alt键 3 KeyDown和KeyUp事件经常用于下列情况 扩展的字符键 如功能键等 定位键 键盘修饰和按键的组合 区别数字小键盘和常规数字键 8 5 1键盘事件过程 7 4 下列情况不能引用KeyDown和KeyUp事件 窗体上有一个Defalt属性为True的命令按钮时按Enter键 窗体上有一个Cancle属性True的命令按钮时按Esc键 例如 下面的语句可判断是否同时按下了Ctrl Shift L组合键 IfKeyCode vbKeyLAndShift vbCtrlMask vbShiftMaskThen 返回首页 返回本节 8 5 2鼠标事件过程 1 MouseDown MouseMove和MouseUp事件与Click和DblClick不同 它们可以区分按下的鼠标按钮以及是否同时按下Shift Ctrl和Alt键 1 鼠标事件过程语法鼠标事件过程语法格式如下 PrivateSub对象 MouseDown MouseMove MouseUp IndexAsInteger ButtonAsInteger ShiftAsInteger XAsSingle YAsSingle 8 5 2鼠标事件过程 2 说明 1 对象 响应事件的对象 窗体用Form 其他控件用控件名 2 Index 当对象为控件数组时 此参数是控件数组元素下标 3 Button 位域参数 用3位二进制数表示哪一个鼠标按钮被按下 如147页表8 2所示 4 Shift 位域参数 用3位二进制数表示鼠标事件发生时 是否同时按下了键盘上的Shift Ctrl和Alt键 取值与键盘事件相同 5 X Y 鼠标在当前对象上的相对坐标 即鼠标指针的位置 8 5 2鼠标事件过程 3 2 MouseDown和MouseUp事件当按下或释放鼠标按钮时分别发生这两个事件 由于鼠标事件可以区分左右按钮并返回指针坐标 因此这两个事件在鼠标右击操作中和判断鼠标指针位置时特别有用 例如 在许多Windows应用程序中 右击某对象会弹出一个快捷菜单 这就是运用MouseDown或MouseUp事件过程的典型实例 以下语句可以在MouseDown MouseUp事件过程中判断是否按下 释放了鼠标右键 IfButton vbRightButtonThen 8 5 2鼠标事件过程 4 3 MouseMove事件此事件在移动鼠标时发生 当鼠标指针处于某个对象的边界内时 该对象能够识别MouseMove事件 应用程序能连续识别大量的MouseMove事件 因此 MouseMove事件过程中的代码不能太复杂 不应去做那些耗时较多的工作 上述三个鼠标事件常用于绘图操作 详细内容将在第12章介绍 8 5 2鼠标事件过程 5 例8 8 用鼠标事件结合Move方法移动控件 要求在程序运行时 按鼠标右键拖动一个命令按钮 使其随鼠标指针移动 在窗体左上角放置一个命令按钮 设置Caption属性为 按住鼠标右键拖动 代码如下 窗体级变量存放按下鼠标按钮时的指针坐标DimiWAsInteger iHAsInteger 在命令按钮上按下鼠标按钮时触发此事件PrivateSubCommand1 MouseDown ButtonAs Integer ShiftAsInteger XAsSingle YAsSingle iW X iH Y 获取鼠标指针初始坐标EndSub 8 5 2鼠标事件过程 6 在命令按钮上移动鼠标时触发此事件PrivateSubCommand1 MouseMove ButtonAs Integer ShiftAsInteger XAsSingle YAsSingle 若移动鼠标的同时按住鼠标右键IfButton vbRightButtonThen 用Move方法移动命令按钮Command1 MoveX Command1 Left iW Y Command1 Top iHEndIfEndSub提示 用同样的方法可以移动没有标题栏 BorderStyle 0 的窗体 8 5 2鼠标事件过程 7 4 鼠标指针大部分可视对象具有MousePointer和MouseIcon属性 利用它们可以在鼠标移动到对象的一个特定部分时改变鼠标指针的形状 MousePointer属性用于设置鼠标指针的类型 设置值0 15是由系统提供的常用类型 如标准指针 0 默认值 沙漏 11 十字线 2 带问号的箭头 14 等 设置值为99时 可以通过MouseIcon属性为鼠标指针指定一个图标文件 ico或 cur 例如 在图8 17中 图片框的MousePointer属性值为14 窗体该属性为默认值 8 5 2鼠标事件过程 8 图8 17鼠标指针 返回首页 返回本节 8 6本章小结 1 本章介绍了数组 一维数组 二维数组 可变数组 控件数组的有关概念 声明或建立的方法及其使用 数组一组具有相同名字 不同下标的变量的集合 数组必须先声明后使用 按声明时数组的大小确定与否分为定长 静态 数组和可调 动态 数组两类 在声明时 数组只有一个下标 则该数组为一维数组 数组有两个下标 则该数组为二维数组 动态数组也叫可调数组或可变长数组 是指在声明数组时未给出数组的大小 省略括号中的下标 当要使用它时 随时用ReDim语句重新指出数组大小 使用动态数组的优点是可以有效地利用内存存储空间 8 6本章小结 2 控件数组是由一组相同类型的控件组成的 它们共用一个控件名 属性基本相同 只有Index属性的值不同 当建立控件数组时 系统给每个元素赋一个惟一的索引号 Index 控件数组共享同样的事件过程 使用Erase语句可以对数组重新初始化 使用Array函数可以为变体型动态数组或变体型变量赋值 使用ForEach Next语句可以遍历数组或集合中的元素 用赋值语句可以将一个数组的全部元素复制到另一个同类型的动态数组或变体型变量 返回首页 8 7上机实训 实训目的掌握一维数组 二维数组和可调 动态 数组的建立和使用 掌握控件数组的建立和使用 实训内容1 制作一个将十进制整数转换为二进制 八进制和十六进制数的程序 2 用单选按钮控件数组设置文本框的字体颜色和背景色 3 求数组元素的最大值 4 数组元素排序 5 利用数组统计字符串中各字母出现的次数 返回首页 结束
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!