可视化程序设计.ppt

上传人:sh****n 文档编号:7427074 上传时间:2020-03-21 格式:PPT 页数:94 大小:372.50KB
返回 下载 相关 举报
可视化程序设计.ppt_第1页
第1页 / 共94页
可视化程序设计.ppt_第2页
第2页 / 共94页
可视化程序设计.ppt_第3页
第3页 / 共94页
点击查看更多>>
资源描述
1 可视化程序设计基础教程 VISUALBASIC6 0上海工程技术大学计算中心 2 1 介绍 计算中心汤老师办公室 工程实训中心14132 教材 可视化程序设计基础教程 可视化程序设计基础实践教程VisualBasic 3 3 上课方法及要求 1 采用课件 PowerPoint 2 程序设计课程的理论性较强 由浅入深 循序渐进 希望同学从课程的一开始就认真学习 若想考前临时突击是不行的 历届的有些学生 一开始不认真听课 做作业 实验 到期中考试以后 想听 想认真学 都很困难了 4 3 本课程是理论性和实践性都很强的课程 共安排14个实验 实验也是考核的方法之一 每次实验前 要求学生预习实验指导的范例 编好程序 实验课时 上机调试 大部分实验 要求完成实验报告 4 认真独立地完成作业 实验 实验报告 5 4 上课时间 教室 周二 1 2 C310415091 415092上机实验地点 周四 7 8 实训楼1455 实验室3 415091 415092 6 上课时间 教室 周二 3 4 D202412091 412092上机实验地点 周四 3 4 实训楼1455 实验室3 412091 412092 7 5 考核方法 作业 实验 包括实验报告 期中考试 出勤40 期末考试60 注意 1 实验课不能玩电脑游戏 若发现 一次扣5分 2 旷课一次 扣3分 上课迟到一次 扣1分 8 6 参考书籍 1 VisualBasic程序设计 主编 刘燕东南大学出版社中国水利水电出版社上海交通大学出版社2 VisualBasic程序设计教程 龚沛曾等编高等教育出版社 9 可视化程序设计基础教程第1章概述第2章基本控件第3章程序设计基础第4章应用程序设计界面设计第5章事件与方法第6章图形和图像第7章数据库应用第8章多媒体应用第9章文件系统第10章ActiveX控件第11章应用实例 10 第1章VisualBasic程序设计概述1 0VisualBasic的发展1 1VisualBasic的功能特点1 2VisualBasic的集成开发环境1 3建立简单的vb应用程序1 4二个简单的VisualBasic程序实例 11 1 0VisualBasic的发展Basic语言是20世纪60年代美国Dartmouth学院的两位教授设计的程序设计语言 它简单易学 人机对话方便 程序运行调试简便 因此 很快得到广泛的应用 20世纪80年代 随着结构化程序设计的需要 出现了新版本的Basic语言 它们增加了新的数据类型和程序控制结构 其中较有影响的有TrueBasic QuickBasic等 12 Windows操作系统的出现 为PC用户提供了一个直观的 图形丰富的工作平台 图形用户界面 GUI 使应用程序更易于学习和使用 但对于程序员来说 其工作难度反而增大了 因为为了编写在Windows环境下运行的程序 必须建立相应的窗口 菜单 对话框等构件 1991年Microsoft公司推出的VisualBasic是以结构化Basic语言为基础 以事件驱动为运行机制 它还提供一套可视化程序设计工具 便于程序员建立图形对象 巧妙地把Windows编程的复杂性 封装 起来 2005年 VisualStudio2005 包括 Net等 本书介绍的是VisualBasic6 0 13 1 1VisualBasic的功能特点1 面向对象的程序设计方法VB把要求操作的数据和处理这些数据的函数 过程 封装在一起构成一个 对象 只有对象中的函数可以改变其中的数据 2 程序界面的可视化设计VB系统提供了大量可视化的工具 控件 利用它们可以在窗体上直观方便地设计出图形界面中的各个对象 14 3 事件驱动的程序设计机制传统的面向过程的应用程序是按事先设计的流程运行的 Windows应用程序的运行是通过事件来 驱动 的 每一个事件均能驱动一段程序代码 在VisualBasic中这一段程序通常称为 事件过程 4 提供应用程序集成开发环境程序员可设计程序界面 编写代码 调试程序和把应用程序编译成可执行程序等 15 例 创建一个 标准EXE 类型的应用程序sy01 01 要求单击命令按钮1 在窗口的文本框中显示变量a的值 单击命令按钮2 结束程序 16 PrivateSubCommand1 Click 事件过程Dima 变量定义a 100 变量赋值Text1 Text Str a EndSubPrivateSubCommand2 Click End 结束程序EndSub 17 5 结构化的程序设计语言6 强大的数据库操纵功能利用数据控件可以访问数据库系统 7 Active控件程序员根据需要 将Active控件添加到标准控件的工具箱中 然后我们就象使用标准控件那样使用这些ActiveX控件 利用ActiveX控件可以提高应用程序的开发能力并简化应用程序的开发过程 8 完备的Help联机帮助系统 18 1 2VisualBasic的集成开发环境1 2 1vb的启动在进入Windows操作系统后 单击 开始 按钮 选择 程序 菜单 打开 MicrosoftVisualBasic6 0中文版 子菜单中的 MicrosoftVisualBasic6 0中文版 程序 就可以启动VB6 0 进入VB后 在新建工程窗口中 列出VB能建立应用程序的类型 选择默认的标准 exe 3个选页 新建 建立新工程 现存 选择和打开现有的工程 最新 列出最近使用过的工程 19 20 1 2 2集成开发环境 p4 工具箱 窗体 工程窗口 属性窗口 立即窗口 21 1 主窗口 p4 p7 应用程序窗口 由标题栏 菜单栏和工具栏组成2 窗体 form 窗口设计vb程序的界面3 工具箱 toolbox 窗口显示各种控件的制作工具 供用户在窗体上设计4 工程资源管理器 projectexplorer 窗口保存一个应用程序所有的文件 工程文件的扩展名为 VBP5 属性 properties 窗口所有窗体或控件的属性设置6 代码 code 窗口进行程序设计的窗口 可显示和编辑程序代码 打开代码窗口方法 鼠标双击一个控件或窗体本身 22 1 2 3VB的几个基本概念 p7 1 类类是创建对象实例的模板 包含了创建对象的属性描述和行为特征的定义 工具箱上的 TextBox 是类 它确定了TextBox的属性 方法和事件 2 对象是类的一个实例 继承了类的属性 方法 Vb中常用的对象有 窗体 控件等 例 窗体上有两个Text对象 是类的实例化 它们继承了Textbox的特征 也可以根据需要修改各自的属性 23 3 对象的建立和命名 建立的控件有缺省的名字 利用工具箱在窗体上建立控件 按钮 文本框 建立的控件对象都有默认名字 Form1 Text1等 程序员也可以在属性窗口通过设置其Name属性给控件对象重新命名 4 对象的三要素 1 属性 对象的性质 即用来描述和反映对象特征的参数 2 方法 对象的行为 即将一些通用的过程编写好并封装起来 作为方法供用户直接调用 24 3 事件响应对象的动作称为事件 它发生在用户与应用程序交互时 单击控件 鼠标移动 键盘按下等 事件过程 指附在该对象上的用户编写的程序代码 是事件的处理程序 事件驱动程序设计 程序执行后 系统等待某个事件的发生 然后去执行处理此事件的事件过程 而后系统又处于等待某事件发生的状态 这就是事件驱动程序设计方式 25 4 VB程序的执行步骤如下 1 启动应用程序 装载和显示窗体 2 窗体 或窗体上的控件 等待事件的发生 3 事件发生时 执行对应的事件过程 4 重复执行步骤 2 和 3 5 直到遇到 END 结束语句结束程序的运行 或按 结束 强行停止程序的运行 26 5 对象的方法对象的 方法 指的是系统为该对象提供的一些特定的子程序 利用这些子程序来实现对象的一些特定的动作 应用程序可以通过调用对象的方法来控制对象的工作 应指出的是 在VisualBasic系统中 不同的对象拥有不同的方法 对象方法的调用格式是 对象名 方法名 参数 在VisualBasic系统中 对象方法的调用可以作为一个单独语句出现 例如 窗体对象拥有Hide Show Print方法 它们分别用来隐藏和显示窗体 在对象上显示文本文字和表达式的值 27 语句 Form1 Hide可以将窗体对象Form1隐藏起来 而语句 Form1 Show使窗体对象Form1成为可见 Form1 Printa b c 显示变量a b c的内容若省略对象名Form1 在当前窗体上输出运算结果 28 6 工程用VisualBasic开发应用程序 首先要创建一个工程 工程就是用于建立应用程序的所有文件的集合 在开发应用程序的过程中还要使用工程管理器来管理这些文件 一个应用程序通常只有一个工程 一个大型的应用程序可能有多个工程 工程中主要包含下列类型的文件 工程文件 VBP 用来记录工程中的所有部件 每当保存工程时 VisualBasic都要更新工程文件 窗体文件 FRM 每一个窗体有一个对应的窗体文件 29 二进制数据文件 FRX 它与每个包含二进制属性的 FRM文件相对应 该文件不能编辑 类模块文件 CLS 工程中可以包含多个类模块文件 标准模块文件 BAS 存储所有模块级变量和用户自定义通用过程 指可以被应用程序各处调用的过程 ActiveX控件文件 OCX 包含ActiveX控件的二进制文件 资源文件 RES 一个工程最多包含一个资源文件 30 1 3Vb应用程序的建立 p9 1 建立用户界面对象文件 新建工程 新建选页 选择 标准EXE 打开 新建一个工程 在新窗体上进行用户界面的设计 2 对象属性的设置单击控件对象 出现 属性窗口 在该窗口中选择或输入属性值 31 3 对象事件过程及编程在Form窗口双击控件对象or右击窗体 查看代码 打开 代码窗口 p13 代码窗口的左边 对象列表框 列出了该窗体的所有对象控件 包括窗体 右边的 过程列表框 列出了对象相关的所有事件 1 单击对象列表框右边的下拉按钮 选择对象控件 2 单击过程列表框右边的箭头 列出与该对象控件相关的所有事件 选择所需的事件 32 4 保存和运行程序 p14 1 保存工程 1 选择 文件 Form1另存为 窗体文件 文件另存为 对话框 输入文件名 扩展名自动添加 frm 文件夹可选择 例 C VBSY 事先创建 2 选择 文件 工程另存为 工程文件 工程另存为 对话框 输入文件名 vbp 操作同上 若要再次修改或运行该文件 文件 打开工程 选择要打开的 工程文件名 将磁盘上的VB文件调入内存 33 2 程序运行 1 编译运行模式文件菜单 生成 exe 将程序代码 机器代码 保存在 exe文件 2 解释运行模式运行菜单 启动 系统读取事件工程代码 机器代码 不保存 运行 34 1 4引例 例1 1 一行内容在窗体左 右移动 移动两种方法 手动和自动 当自动时 文字闪烁显示 当内容超出窗体 进行反弹 例1 2 对输入的字符进行转换的程序 转换规则 大写字母转换成小写字母 小写字母转换成大写字母空格不转换其余转换成 要求 每输入一个字符 马上就进行判断和转换 通过上述两例说明VB面向对象 可视化 事件驱动的特点 35 Dimstep1AsInteger 例1 1的程序代码PrivateSubForm Load 初始化step1 1Timer1 Interval 0EndSubPrivateSubCommand2 Click 手动Timer1 Interval 0CallMyMoveEndSubPrivateSubCommand1 Click 自动Timer1 Interval 200EndSubPrivateSubTimer1 Timer StaticFlagAsBooleanIfFlagThenLabel1 ForeColor HFFFFFFElseLabel1 ForeColor H0 Flag NotFlagCallMyMove 调用自定义移动过程EndSub 36 PublicSubMyMove 自定义移动过程Label1 MoveLabel1 Left 50 step1IfLabel1 Left Form1 WidthThenstep1 1ElseIfLabel1 Left 0Thenstep1 1EndIfEndSub 37 PrivateSubText1 KeyPress KeyAsciiAsInteger 例1 2程序代码DimaaAsString 1DimLengthAsInteger Length存放文本框中字符串的长度Length Len Text2 Text 求Text2中字符串长度aa Chr KeyAscii 将ASCII码转换成字符SelectCaseaaCase A To Z 大写转换成小写aa Chr KeyAscii 32 Case a To z 小写转换成大写aa Chr KeyAscii 32 Case CaseElseaa EndSelect 将转换文本框已有的内容与刚输入并转换的字符连接Text2 Text Text2 Text aaEndSubPrivateSubCommand1 Click Text1 Text Text2 Text EndSubPrivateSubCommand2 Click EndEndSub 38 实验一 简单的VB应用程序Sy01 01启动VB6 0 创建一个 标准EXE 类型的应用程序sy01 01 vbp 要求在窗口的文本框中显示 欢迎使用VisualBasic 单击窗体 文本框中以 宋体 粗体 16号字 显示文本 双文本框中以 幼圆 18号字 显示文本 操作步骤 1 建立用户界面对象文件 新建工程 新建选页 选择 标准EXE 打开 新建一个工程 在新窗体上进行用户界面的设计 利用工具画一个文本框2 对象属性的设置单击控件对象 出现 属性窗口 在该窗口中选择或输入属性值 Form1的caption属性 简单vb程序3 对象事件过程及编程在Form窗口双击控件对象 form1 or右击窗体 查看代码 打开 代码窗口 p20 编写程序代码 39 PrivateSubForm Click Text1 FontName 宋体 Text1 FontSize 16Text1 FontBold TrueText1 Text 欢迎使用VisualBasic EndSubPrivateSubForm DblClick Text1 FontName 幼圆 Text1 FontSize 18Text1 FontBold FalseText1 Text 欢迎使用VisualBasic EndSub 40 第2章基本控件可视化程序设计的重要内容 就是通过使用控件来构建应用程序的可视化界面 本章介绍一些常用的基本控件 让用户了解如何使用控件及相关的属性 方法和事件 41 2 1窗体 标签 命令按钮 文本框2 1 0窗体 Form 2 1 1标签 Label 2 1 2命令按钮 CommandButton 2 1 3文本框 TextBox 42 2 1 0窗体窗体是一块 画布 所有控件的容器 用户可以根据需要 利用工具箱上的控件类图标在窗体上画出程序的界面 1 主要属性窗体属性决定了窗体的外观和操作 对大部分窗体属性 可以通过属性窗口设置 也可在代码窗口通过编程设置 Caption 标题栏显示的内容 43 Name 对象的名称 程序中使用 MaxButton MinButton True有最大化 最小化按钮 False无 WindowsState 程序运行时 窗体的状态 0 正常 1 最小化 2 最大化 标题 最小化按钮 最大化按钮 控制菜单 44 2 事件Click DblClick和LoadClick 单击窗体对象时触发该事件 DblClick 双击窗体对象时触发该事件 Load 当装入窗体时激发 通常用于对属性和变量初始化 3 方法Print Cls和Move等Print方法 在窗体上显示文本或表达式的值 Cls方法 清除运行时在窗体上或图形框显示文本或图形 45 例2 1 上述属性 Click DblClick和Load事件演示 在窗体装入时 在窗体的标题栏显示 装入窗体 当单击窗体时 在标题栏显示 鼠标单击 在窗体显示 欢迎使用VB 当双击窗体 在标题栏显示 鼠标双击 清除窗体的背景图案 并显示 结束使用VB 46 2 1 1标签 Label 标签 Label 用来显示文本 但用户不能更改标签中显示的内容 只能编写代码改变Label控件显示的文本 1 主要属性Caption Name等属性同窗体属性 Alignment属性 设置文本的对齐方式 0 LeftJustify 缺省值 左对齐 1 RightJustify 右对齐 2 Center 居中 AutoSize属性 设置控件是否自动改变大小 以显示全部文本 True 自动改变控件大小 以显示全部文本 False 缺省值 不改变控件大小 超出控件区域的文本将被裁剪 47 WordWrap属性 对一个AutoSize为True的标签 设置是否要水平或垂直展开以适合显示Caption中文本的长短 True 文本卷绕 水平大小不变 垂直大小可变 False 缺省值 文本不卷绕 水平 垂直大小都可变 Visible属性 设置标签是否可见 True 缺省值 标签可见 Flase 标签不可见 48 2 事件Click事件 单击标签对象时触发该事件 DblClick事件 双击标签对象时触发该事件 Change事件 在DDE链接更新数据或通过代码改变Caption属性的设置时 触发该事件 3 实例 例2 2 在窗体上建立两个大小相同的标签 程序运行后 分别单击Label1和Label2 观察AutoSize属性的作用 49 2 1 2命令按钮 CommandButton 命令按钮控件主要用于在程序执行过程期间 当用户选择某个命令按钮时 就会执行相应的事件过程 可以有三种方式 鼠标单击 按Tab键将焦点移到该按钮 快捷键 1 主要属性Caption 命令按钮显示的内容 可设置快捷键 例 Ok 显示OkValue 检查该按钮是否按下 该属性在程序界面设计时无效 True 已选择该按钮 False 没有选择该按钮 50 Picture 按钮可显示图片文件 bmp和 Ico 当Style为1时有效 Style 确定显示的形式 0 只能显示文字 1 文字 图形均可 ToolTipText 设置工具提示 和Picture结合使用 Visible 设置控件是否可见 True 程序运行时 控件可见 Flase 程序运行时 控件控件隐藏 Enabled 设置控件是否允许操作 True 允许操作 Flase 禁止操作 51 2 事件Click事件 使用鼠标或键盘 用以下方法触发命令按钮的Click事件 1 用鼠标单击按钮 2 当该命令按钮具有焦点时 按SpaceBar键 52 3 按命令按钮的访问键 ALT 带下划线的字母 4 若窗体有一个缺省按钮 Default属性设为True 可以按回车键 触发该事件 5 若窗体有一个取消按钮 Cancel属性 True 可以按ESC键触发该事件 MouseDown事件 按下鼠标时 触发该事件 MouseUp事件 鼠标释放时 触发该事件 MouseMove事件 移动鼠标时 触发该事件 MouseDrop事件 拖放鼠标至某对象上释放时 触发该事件 例 触发命令按钮的Click MouseDown MouseUp事件 53 3 方法Drag 设置命令按钮拖动的开始 结束或取消拖动操作1 vbBeginDrag 缺省 2 结束0 vbCancel取消Move 移动控件例 Command1 movelelt top width heightxy坐标 54 4 实例 例2 3 建立一个允许剪切 复制和粘贴的简单便笺板程序 可增加内容 利用MouseMove事件决定命令按钮的有效性 即当选中内容 剪切 复制 按钮有效 否则无效 命令按钮的Style属性 1 Graphical 0 Standard 缺省 55 DimstAsString 模块级变量PrivateSubcmdCopy Click st Text1 SelText 将选中的内容存放到st变量中EndSubPrivateSubcmdCut Click st Text1 SelText 将选中的内容存放到st变量中Text1 SelText 将选中的内容清除 实现了剪切cmdCopy Enabled FalsecmdCut Enabled FalsecmdPaste Enabled TrueEndSub 56 PrivateSubcmdExit Click EndEndSubPrivateSubcmdPaste Click 将st变量中的内容插入到光标所在的位置 实现了粘贴Text1 SelText stEndSubPrivateSubForm Load 设置剪切 复制 粘贴按钮无效cmdCut Enabled FalsecmdCopy Enabled FalsecmdPaste Enabled FalseEndSub 57 PrivateSubText1 MouseMove ButtonAsInteger ShiftAsInteger XAsSingle YAsSingle IfText1 SelText ThencmdCut Enabled True 当拖动鼠标选中要操作的文本后 剪切 复制按钮有效cmdCopy Enabled TruecmdPaste Enabled FalseElsecmdCut Enabled False 当拖动鼠标未选中文本 剪切 复制按钮无效cmdCopy Enabled FalsecmdPaste Enabled TrueEndIfEndSub 58 2 1 3文本框 TextBox 文本框 TextBox 是一个文本编辑区域 可在该区域输入 编辑和显示正文内容 在程序运行时作为人机对话的交互对象 1 主要属性Text 文本框无Caption属性 显示正文内容在Text属性中 Maxlength 设置正文的最多字符个数 0 任意长度值 MultiLine 设置文本框是否能够接受和显示多行文本 在运行时为只读 True 允许多行显示 False 缺省值 不允许多行显示 59 ScrollBars 当MultiLine为True时 该属性才有效 其属性值有 0 None 缺省值 无滚动条 1 Horizontal 水平滚动条 2 Vertical 垂直滚动条 3 Both 水平和垂直滚动条 Locked 文本控件是否可被编辑 False 缺省 表示为可编辑 True 不可编辑 PassWord 口令字符 Text属性返回输入的数据 屏幕显示该字符 SelStart SelLength SelText 选中文本的起始 长度 内容 这三个属性在程序界面设计时不可用 60 2 常用事件Change事件 在文本框中输入或改变内容 以及程序运行时 Text属性改变而触发该事件 KeyPress事件 按下并且释放键盘上的一个ANSI键时 就会引发焦点所在控件的KeyPress事件 LostFocus事件 控件失去焦点时发生 在程序代码中可使用SetFocus方法来改变焦点 GetFocus事件 当控件获得焦点时发生 为获得焦点 用户可以通过Tab键切换 或单击对象等操作 或在程序代码中用SetFocus方法设置焦点 61 3 常用方法 对象 SetFocus 把光标移到指定的文本框对象中 它还可以用于CheckBox CommandButton和ListBox等控件 4 实例 例2 4 在窗体上建立一个标签和两个文本框 观察获得焦点的文本框事件GetFous和失去焦点的文本框事件LostFocus 分别单击Text1和Text2文本框 62 2 2复选框 单选按钮 框架2 2 1复选框 CheckBox 2 2 2单选按钮 OptionButton 2 2 3框架 Frame 63 2 2 1复选框 CheckBox 复选框 CheckBox 常用于对给定选项的逻辑选择 若干个复选框可以多项组合使用 1 主要属性Caption属性 设置复选框显示的文本内容 也可以用连字符 创建快捷方式来切换复选框的选择 Alignment属性 设置复选框的对齐方式 0 缺省值 复选框在文本的左边 1 复选框在文本的右边 64 Value属性 设置CheckBox控件的状态 0 缺省值 未选定 1 选定显示为打勾 2 禁止状态 暗淡显示 Style属性 设置CheckBox控件的显示类型 0 缺省值 Standard 标准方式 1 Graphical 图形方式 2 事件Click事件 当单击复选框控件时触发Click事件 自动改变状态 该控件不支持DblClick事件 65 2 2 2单选按钮 OptionButton 单选按钮 OptionButton 用于一组多选一的控件 若干个单选按钮可以分组使用 在同一组单选按钮中 只能选择其中的一个选项 即当选中某一个单选按钮时 其他单选按钮会自动失选 1 主要属性Caption属性 单选按钮旁的显示文本 Value属性 设置单选按钮的状态 True 选中单选按钮 当中有一个圆点 同组的其他单选按钮失效 False 未选中单选按钮 66 补充 Font系列属性 1 FontName 字体类型Text1 FontName 宋体 2 FontSize 字体大小Text1 FontSize 203 ForeColor 前景色 正文颜色 Text1 ForeColor vbRed4 BackColor 背景色Text1 BackColor VbYellow 67 2 事件单选按钮控件支持Click和DblClick事件3 实例 例2 5 用单选按钮和复选框设置文本框的字体 68 2 2 3框架 Frame 框架是一个容器控件 它使窗体中的各控件可分组使用 1 主要属性 Caption属性 显示框架标题内容 若设置为 空 则框架显示为一个封闭的矩形框 Enabled属性 设置框架内控件是否有效 True 框架中的对象可被用户操作 False 框架中的对象被屏蔽 禁止用户操作 2 事件该控件支持Click和DblClick事件 69 3 Frame容器中对象的产生新产生框架和子框架控件 必须先产生框架 再在框架中产生子控件 对已有控件归入框架内 选中框架外控件 剪切后 粘贴到框架内 4 实例 例2 6 在窗体上建立一个标签 两个框架和六个单选按钮 用框架将单选按钮分成相互独立的两个组 对一个框架内的单选按钮进行操作 不会影响另一个框架内的单选按钮 70 2 3组合框 列表框 滚动条2 3 1组合框 ComboBox 2 3 2列表框 ListBox 2 3 2滚动条 71 2 3 1组合框 ComboBox 组合框 ComboBox 将文本框 TextBox 和列表框 ListBox 的功能组合在一起 它的特点是占用窗体位置极小 允许用户在文本框中输入内容 但要用AddItem方法将内容添加到列表框 也允许用户在列表框选择项目 选中的项目同时在文本框中显示 1 主要属性 Text属性 返回当前选中的项目文本 它是只读属性 72 Style属性 设置组合框的类型 0 缺省值 标准下拉组合框 具有下拉列表单选和输入新增文本的功能 1 简单组合框 设计时需要给出缺省值 列表不能下拉 只能列表滚动 单选并可以输入新增文本 2 下拉列表框 具有下拉列表单选功能 但不能输入新增项目 组合框的三种样式如图所示 73 ListCount属性 返回组合框中项目计数 它是只读属性 List数组属性 通过下标访问组合框项目内容 下标从0到ListCount 1 可以对List的元素项目赋值来改变内容 但不能增加或删除项目 只能通过AddItem方法增加项目或RemoveItem方法删除项目 ListIndex属性 是当前选中项目的下标索引 没有项目被选定时为 1 仅在程序代码设计时可用 Sorted属性 组合框项目排列 True 按字母顺序排列 False 按加入先后顺序排列 74 2 方法AddItem方法 用于在组合框获列表框控件中添加项目 例 Combo1 AddItemItem Index 其中Item为字符串表达式 要添加的项目 Index是可选项 整数 用于指定新项目在组合框或列表框控件中的位置 首行的Index为0 省略表示插入到最后 RemoveItem方法 从组合框或列表框控件控件列表中删除指定位置的项目 例 Combo1 RemoveItemIndexClear方法 清除组合框中全部项目 Combo1 Clear 75 3 事件Click事件 所有类型的组合框都响应Click事件 DblClick事件 只有当Style属性设置为1 即控件是简单组合框 时 响应该事件 DropDown事件 当下拉ComboBox控件 显示列表前 时触发 如果其Style属性为1时 则不触发该事件 KeyPress事件 当键盘按下时发生 同时获取其ASCII码 Scroll事件 当下拉列表的滚动条滚动时 该事件发生 只有当Style属性设置为1时 才会有滚动条 4 实例 例2 7 在窗体上建4个组合框 用于选择微机配置 包括选择机型 CPU主频 硬盘 内存 运行时 在选择了各项内容之后 单击 选择 按钮 文本框会显示所选择的机器配置 76 在设计时 可以在List属性中输入下拉框项目 按Ctrl Enter键 输入一个项目 重复上述过程 直至输完全部项目 按Enter退出输入项目状态 也可通过AddItem方法在程序运行时 添加这些项目 77 2 3 2列表框 ListBox 列表框 ListBox 常常用于多项目选择的场合 列表框内容可以通过滚动条浏览和选择 它支持多列显示 多项选择 但不能输入文本 占用窗体位置较大 1 属性Text属性 返回当前选中的项目文本 它是只读属性 List属性 设置控件的列表部分的项目 List是一个字符串数组 该数组在设计时可以通过属性直接输入 类似前面已学过的CommboBox的List属性 List属性通过下标访问其项目内容 下标从0到ListCount 1 可以对其进行赋值改变内容 但不能增加或删除项目 只能通过AddItem方法或RemoveItem方法增删项目 78 ListIndex属性 该属性只能在程序代码中设置或引用 ListIndex的值表示程序运行时被选定的选项的序号 如果未中任何选项时ListIndex为 1 Style属性 设置列表框的二种样式 0 缺省值 Standerd 标准列表框 1 CheckBox复选列表框 Sorted属性 设置列表框中的项目是否按字母表顺序排序 True 按字母表顺序排序 False 缺省值 按加入的先后顺序排序 79 MultiSelect属性 针对style属性为0而言 设置列表框中的多项选择方式 0 缺省值 不允许多项选择 1 简单多项选择 鼠标单击或按下空格键在列表中选中或取消选中项 2 扩展多项选择单击所要选择范围的第一个项目 然后按下Shift键 同时单击所要选择范围的最后一个项目 则可选定多个连续项目 按下Ctrl键 同时鼠标单击或按下空格键可以在列表框中添加选中项或取消选中项 Selected属性 是布尔数组 配合MultiSelect属性一起使用 选中项对应的Selected List1 ListIndex 为True 其余的都是False 80 2 方法AddItem方法 增加新项目至列表框 List1 AddItemItem Index 其中 Item为字符串表达式 Index为插入索引位置 省略Index表示插入至最后 RemoveItem方法 从列表框中指定索引位置上删除项目 其格式为 List1 RemoveItemindex Clear方法 清除列表框中全部项目 3 事件列表框支持Click和DblClick事件 81 组合框 列表框的List属性 List 它是一个字符串数组 内存中一块连续区域 内存 10000项目List1 Text1 Combo1 text 23ListIndex4下标从0 Listcount 1 小学中学高职大学研究生 82 1 可以改变list列表框或Combo组合框的内容list1 Text 2 大专 Combo1 Text 2 大专 2 增加或删除项目只能用方法Additem或RemoveitemCombo1 Additem 硕士研究生 List1 Additem 硕士研究生 插入list列表框或Combo组合框的最后面Combo1 Removeitem5List1 Removeitem5 索引值 将硕士研究生项删除 83 3 Selected属性 List控件特有的 是一个布尔数组 只能在程序设计中设置或引用 表示对应项在程序运行期间是否被选中 例 List1 Selected 2 为True 表示列表框的第2项 高职 被选中 否则表示未被选中 那么其余项都是False 表示未被选中 4 事件列表框支持Click和DblClick 84 4 实例 例2 8 设计如图所示的界面 左列表框列出了某数据表格的待选择项目内容 右列表框显示已经选择的项目 各按钮功能 右移 将左侧列表框中待选择的字段移动到右侧列表框中 左移 将右侧列表框中已选择的字段移回到左侧列表框中 将左侧列表框中的所有字段移动到右侧列表框中 将右侧列表框中的所有字段移回到左侧列表框中 85 2 3 3滚动条水平滚动条 HScrollBar 和垂直滚动条 VScrollBar 控件常常用来附加在窗体上协助观察数据或确定位置 也可用来作为输入工具 该控件和文本框 列表框等控件中出现的滚动条不同 是一个独立的控件 1 主要属性Max属性 当滑块处于最大位置时所代表的值 32768 32767 Min属性 当滑块处于最小位置时所代表的值 32768 32767 86 Value属性 滚动条滑块所处位置的当前值 该值介于Max和Min属性值之间 包括Max和Min 改变Value值可以用以下几种方法 属性窗口设置 单击移动箭头 拖动滚动滑块 单击滚动条两头 通过外界改变 如程序代码 LargeChange属性 当用户单击滚动条滑块和滚动箭头之间的区域时 设置Value值的最大改变量 SmallChange属性 当用户单击滚动箭头时 设置Value值的最小改变量 2 事件Change事件 程序运行时 改变Value值的操作会触发该事件 Scroll事件 当鼠标拖动滑块时 触发该事件 87 3 实例 例2 9 在窗体上建立两个标签 一个文本框和一个水平滚动条 用滚动条来控制文本框内字体的大小 TxtDisp HSclFontSize LblNum 88 例2 10 设计一个调色板应用程序 如图所示 使用三个滚动条 hsbRed hsbGreen hsbBlue 作为三种基本颜色的输入工具 合成的颜色显示在右边的颜色区中 颜色区是一个文本框 txtColor 用合成颜色设置其BackColor属性 完成调色后 用 设置前景颜色 cmdForeColor 或 设置背景颜色 cmdbackColor 按钮设置右边文本框 txtTest 的颜色 89 DimRed Green BlueAsLong 窗体级变量PrivateSubhsbRed Change Red hsbRed Value 设置三个滚动条的值Green hsbGreen ValueBlue hsbBule ValuetxtColor BackColor RGB Red Green Blue EndSubhsbGreen hsbBlue的事件过程与hsbRed相同 PrivateSubcmdForeColor Click txtTest ForeColor txtColor BackColor 设置前景颜色EndSubPrivateSubcmdBackColor Click txtTest BackColor txtColor BackColor 设置背景EndSub 90 说明 1 窗体级变量 可以被本窗体的任何过程访问DimRed 定义Red为长整型2 RGB Red Green Blue 通过三原色的设置生成一种用于显示的颜色 其中Red Green和Blue均为整数 取值范围为0 255 用于指定红 绿 蓝三原色的相对亮度 RGB函数返回一个颜色值 91 实验二 基本控件 一 实验2 1 建立应用程序sy02 01 设计一个四则运算器 运行界面如图所示 要求 在操作数1和操作数2文本框中 分别输入两个数 选择运算符 单击 计算 按钮 在结果文本框中 显示计算结果 对于输入的两个数 应具有检验能力 例如 若在操作数1和操作数2文本框中 输入非数值数据 在操作数2文本框中 输入的除数为零 都应该能清除错误的输入 使用SetFocus方法 使输入文本框光标重新定位 92 实验2 2 建立应用程序sy02 02 设计一个如图2 6所示的窗体 使用单选按钮和复选框选择字体 字号 字形和效果等 在文本框中观察显示结果 93 实验三基本控件 二 实验3 1 建立应用程序sy03 01 设计一个如图3 7所示的窗体 它具有二个标签 二个列表框和三个命令按钮 要求 在左列表框中选择课程后 按 选择 按钮 将选修的课程 显示在右边的列表框中 按 清空 按钮 能把右列表框中的内容全部清除 按 退出 按钮 可退出程序 94 实验3 2 建立应用程序sy03 02 设计一个如图3 8所示的窗体 它具有一个滚动条 二个标签 二个文本框和一个命令按钮 滚动条对应的最小值是摄氏零度 最大值是摄氏100度 程序运行时 拖动滚动条的滑块 摄氏及华氏文本框能正确显示相应的温度值 提示 摄氏和华氏温度的转换 可用公式 F 9C 160 5 式中 F 华氏 C 摄氏
展开阅读全文
相关资源
相关搜索

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


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

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


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