大学公共课程vb教学课件--第2章.ppt_第1页
大学公共课程vb教学课件--第2章.ppt_第2页
大学公共课程vb教学课件--第2章.ppt_第3页
大学公共课程vb教学课件--第2章.ppt_第4页
大学公共课程vb教学课件--第2章.ppt_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 86 第2章 可视化编程的基本概念及界面设计基础 本章主要内容2 1可视化编程的基本概念2 2界面设计基础2 3创建VisualBasic应用程序的步骤 2 86 2 1可视化编程的基本概念 可视化编程是以 所见即所得 的编程思想为原则 力图实现编程工作的可视化 即随时可以看到结果 首先从工具箱中选定控件 然后在窗口的适当位置 画 出所需的命令按钮 标签等控件对象 再为控件设置相关属性 之后立即可以看到界面的显示效果 而生成界面的程序代码则由系统自动完成 目前流行的可视化编程语言有VisualBasic VisualFoxpro VisualC 等 3 86 VB是一种面向对象的程序设计语言 其程序设计原则是以对象为中心 1 对象对象就是现实世界中某个具体的事物 或者说对象是具有特殊属性 数据 和行为方式 方法 的实体 例如 主板 CPU 内存容器对象 电脑在VB中 对象是运行时的实体 如窗体 命令按钮等各种控件 对象与类 4 86 2 类类是一个抽象的整体概念 对象是类的实例化 例如 人 汽车 电话 桌子等都可当作 类 以 汽车 为例 说明类与对象的关系 汽车是一个笼统的名称 是整体概念 我们把汽车看成一个 类 一辆辆具体的汽车 比如各种牌子的汽车 就是这个类的实例 也就是这个类的对象 对象与类 续 5 86 工具箱中的各种控件代表了各个不同的类 当在窗体上画一个控件时 就将类转换为对象 即创建了一个控件对象 也简称为控件 对象与类 续 6 86 3 VisualBasic中对象的操作 1 建立对象方法1 单击工具箱中的某个控件 在窗体上拖动 方法2 双击工具箱控件对象 则立即在窗体出现一个默认大小的对象框 对象与类 续 7 86 2 编辑对象 实例示范 先选定对象 然后可以进行编辑操作选定对象选定一个对象 单击对象选定多个对象 Ctrl Shift 单击编辑操作放大 缩小 鼠标拖动或修改相关属性删除对象 按Del键复制对象 复制 粘贴 对象与类 续 8 86 3 对象的命名 对象与类 续 1 必须由字母或汉字开头 随后可以是字母 汉字 数字 下划线串组成 2 长度 255个字符 简短 易记为好 默认名 9 86 属性 描述和反映对象特征的参数 属性决定了对象展现给用户的界面具有什么样的外观及功能 例如 控件名称 Name 标题 Caption 颜色 Color 字体 FontName 属性设置的方法 方法1 通过属性窗口设置 方法2 在程序代码中通过赋值语句实现 格式 对象 属性 属性值例如 cmdDisp Caption 显示 属性 Property 10 86 1 事件 Event 由VB预先设置好的 能被对象识别的动作 如 Click 单击 Dblclick 双击 等 2 事件过程 EventProcedure 对象的事件发生后 应用程序处理这个事件所执行的一段程序代码 事件与事件过程 一般格式如下 PrivateSub对象名 事件过程名 参数列表 事件过程代码 EndSub 11 86 事件与事件过程 续 例2 1 设计界面如图所示 单击 显示 按钮 窗体显示 正在上课 单击 隐藏 按钮 该句隐藏 12 86 事件 事件过程 事件过程 对象 思考 单击窗体结束程序运行 如何编码 13 86 方法 是用来完成特定操作的过程和函数 方法是面向对象的 调用时要指明对象 对象方法调用形式 对象 方法 参数列表 如省略对象 表示是当前对象 一般指当前窗体 例如 Form1 print VB程序设计 若当前窗体是Form1 则可简写为 print VB程序设计 方法 Method 属性 事件和方法是对象的三要素 14 86 焦点与Tab键序 1 焦点例如 在一个窗体上有多个文本框 其中有一个文本框中有闪烁的光标 如果用户从键盘输入字符 输入的字符一定出现在该文本框中 此文本框即获得了焦点 Focus 在任何时刻 只能有一个对象获得焦点 使一个对象获得焦点的常用方法 选定对象 用鼠标单击对象或使用快捷键选定对象 在代码中用SetFocus方法设置焦点 例如 Text1 SetFocus另外 框架 标签 计时器 菜单 直线 图像框等控件是不能得到焦点的 15 86 2 Tab键序Tab键序是指用户按Tab键时 焦点在控件间移动的顺序 系统默认的Tab键序与控件建立的顺序相同 也可以重新设置控件的TabIndex属性修改Tab键序 第一个默认获得焦点的控件的TabIndex属性值为0 其他控件依次为1 2 3 焦点与Tab键序 续 16 86 2 2界面设计基础 在可视化编程环境中 编制应用程序的步骤是 设计界面面向对象编写程序代码在界面设计中必不可少的是窗体 通常还会在窗体上添加命令按钮 标签和文本框等控件 另外还有其他控件 将在后面章节中介绍 17 86 窗体 窗体 Form 就是窗口 各种控件对象必须建立在窗体上 在保存应用程序时 一个窗体对应一个窗体文件 1 窗体的结构 18 86 常用的窗体属性有 1 Name 名称 属性指定窗体的名称 在程序代码中用这个名称引用该窗体 例如 form1 print ok 2 窗体的属性 窗体名 方法 第一个窗体的名称缺省值为form1 第二个窗体的名称缺省值为form2 通常要给Name属性设置一个有实际意义的名称 便于识别 19 86 2 窗体的属性 续 2 Caption属性 设置窗体标题栏显示的文本 3 Font属性组 设置窗体上字体的样式 大小 字形等 通过属性窗口设置 20 86 程序中设置 见下表 21 86 例如 下面程序的运行结果如图所示 PrivateSubForm Click Form1 FontName 黑体 Form1 FontSize 40Print 字体设置 Form1 FontItalic True 斜体Form1 FontBold True 粗体Print 字体设置 EndSub 22 86 4 Enabled属性 决定控件是否可操作 True 允许用户进行操作 缺省值 False 呈暗淡色 禁止用户进行操作 2 窗体的属性 续 注意 如果窗体或其他容器对象无效 容器中的所有控件也将无效 例如 单击窗体时 命令按钮CmdOK有效性改变为无效 PrivateSubForm Click CmdOK Enabled falseEndSub 23 86 5 Visible属性 决定控件是否可见 True 运行时控件可见 缺省值 False 运行时控件隐藏 用户看不到 但控件本身是存在的 6 BackColor属性 用于设置窗体的背景颜色 7 ForeColor属性 用于设置在窗体中显示图片和文本的颜色 8 MaxButton属性 值为Ture时有最大化按钮 9 MinButton属性 值为Ture时有最小化按钮 2 窗体的属性 续 24 86 2 窗体的属性 续 14 AutoRedraw属性该属性决定窗体被隐藏或被另一窗口覆盖之后重新显示 是否重新还原该窗体被隐藏或覆盖以前的画面 即是否重画如Circle Line Pset和Print等方法的输出 当为True时 重新还原该窗体以前的画面 当为False时 则不重画 注意 在窗体load事件中如果用print方法在窗体打印输出 就必须先将该属性置为True 否则窗体启动后没有输出 因为窗体是在load事件执行完后显示 25 86 10 13 15 属性 自学 2 窗体的属性 续 属性多 难记 要多上机 学会编程后 再回来重温效果比较好 26 86 与窗体有关的事件有30多个 掌握常用事件 1 Click DblClick 单击 双击窗体 2 Load 窗体被装入时触发的事件 该事件通常用来在启动应用程序时对属性和变量进行初始化 3 Unload事件 卸载窗体时触发该事件 4 Activate事件 当窗体变为活动窗体时触发该事件 3 窗体的事件 27 86 窗体常用的方法有 打印输出Print移动Move清除Cls显示Show隐藏Hide等方法 4 窗体的方法 方法是面向对象的 使用的形式 对象 方法 方法是VisualBasic系统为编程者提供的用来完成特定功能的过程或函数 28 86 1 Print方法功能 在窗体上输出信息 调用格式 窗体名 Print Spc n Tab n 表达式列表 说明 若窗体名省略 则在当前窗体上输出 如果在立即窗口使用print方法可省略对象名或写debug Spc n 函数 输出n个空格 4 窗体的方法 续 29 86 4 窗体的方法 续 Tab n 函数 表达式的值从第n列输出 当n小于当前的输出位置时 则新的输出位置为下一行的第n列 分号 光标定位在上一个输出项的后面 逗号 光标定位在下一个输出段的开始位置 每个输出段占14列 缺省 自动换行 例2 2 在Form1窗体的单击事件中写入如下代码 30 86 PrivateSubForm Click Print PrintTab 5 这学期我们学习VB PrintTab 5 VB的全称是 Visual Basic Print 空一行PrintTab 5 Visual的意思是 视觉的 Print 或可视的 PrintPrintTab 5 教学方式 Tab 20 课时 PrintPrintSpc 4 课堂教学 Tab 20 30PrintSpc 6 上机 Tab 20 24Print EndSub 31 86 单击窗体后程序的运行结果如图 a 所示 a 32 86 如果将程序中的第7行语句 Print 或可视的 修改为 PrintTab 5 或可视的 程序的运行结果如图 b 所示 b 33 86 2 Cls 清除 方法功能 清除运行时在窗体中显示的文本或图形 调用格式 窗体名 Cls说明 不清除在设计时的文本和图形 例如 单击窗体 清除窗体上的输出信息 PrivateSubForm Click ClsEndSub 4 窗体的方法 续 34 86 3 Move 移动 方法功能 在屏幕上移动窗体并可改变其大小 调用格式 窗体名 Move左边距离 上边距离 宽度 高度 说明 左边距离 上边距离 宽度 高度均为数值表达式 以twip为单位 左边距 和 上边距 是以屏幕边界为准 4 窗体的方法 续 35 86 例 使用Move方法移动一个窗体 双击窗体 窗体移动并定位在屏幕的左上角 同时窗体的长宽也缩小一倍 在Form1窗体的 代码 窗口中输入下列代码 PrivateSubForm DblClick Form1 Move0 0 Form1 Width 2 Form1 Height 2EndSub 4 窗体的方法 续 当前窗体可以省略 36 86 命令按钮 CommandButton 命令按钮常用来接受用户的操作信息 当用户单击命令按钮后开始进行一个特定的操作 如程序的运行或结束等 1 属性命令按钮的主要属性有 Caption属性设置命令按钮上显示的文本 还可以给命令按钮定义一个快捷键 37 86 命令按钮 续 例如 显示 Ok Caption Ok显示 Ok Caption Ok快捷键Alt O 练习 显示 退出 X Caption 退出 X 38 86 2 Default属性 逻辑值 当命令按钮的Default属性设置为True时 在程序运行过程中 用户按Enter键相当于用鼠标单击了该按钮 命令按钮 续 例如 界面如图 如果将 登记 按钮的Default属性设置为True 当用户输入完信息后可直接按Enter键 相当于按 登记 按钮 39 86 3 Cancel属性 逻辑值 命令按钮的Cancel属性设置为True时 不管窗体上的哪一个非命令按钮控件具有焦点 只要用户按下Esc键 就相当于单击了该按钮 命令按钮 续 例如 界面如上图 如果将 结束 按钮的Cancel属性设置为True 用户按Esc键相当于按 结束 按钮 通常将 取消 按钮的Cancel属性设置为True 40 86 Value属性该属性在设计时无效 程序运行时 通过将命令按钮的Value属性设置为True 就可以触发该命令按钮的Click事件 相当于单击该命令按钮 Style属性确定命令按钮的显示形式 设置为0时只能显示文字 设置为1时可以显示图形或设置颜色 命令按钮 续 41 86 Picture属性当命令按钮的Style属性值设置为1时 通过该属性指定命令按钮上显示的图片 另外 下面这些基本属性与窗体的属性使用相同 Name 名称 Height 高 Width 宽 Top及Left 相对容器左上角的坐标值 Enabled 控件是否可用 Visible 控件是否可见 Font 字体 命令按钮 续 42 86 命令按钮 续 2 事件最常用的是单击 Click 事件 一般也只对该事件进行编程 在设计模式下 双击命令按钮则打开代码窗口 并显示命令按钮的Click事件过程模版 编程者可以直接在过程体内写程序代码 43 86 命令按钮 续 例2 3 单击窗体上的 显示 按钮 窗体上显示 同学们好 如图 a 所示 单击 清屏 按钮 清除窗体上显示的信息 如图 b 所示 44 86 操作步骤如下 界面设计 在窗体上添加2个命令按钮并设置各对象的主要属性 代码设计 打开代码窗口 编制命令按钮的单击事件过程 代码如下 PrivateSubCommand1 Click Print 同学们好 EndSubPrivateSubCommand2 Click ClsEndSub 45 86 3 方法命令按钮的方法用得比较少 在此介绍一个方法 Setfocus 设置焦点 方法功能 该方法用于设置指定的命令按钮获得焦点 例如 使命令按钮Command1获得焦点的语句为 Command1 setfocus 命令按钮 续 46 86 标签 Label 标签用来显示文本信息 用户不能在标签内输入文本也不能对标签内的文本进行编辑 1 属性 Caption属性设置标签中显示的文本 Alignment属性用于设置Caption属性中文本的对齐方式 0 LeftJustify 左对齐 1 RightJustify 右对齐 2 Center 居中对齐 47 86 标签 续 BorderStyle属性用于设置标签控件是否有边框 0 标签无边框 1 标签有固定单边框 BackStyle属性用于设置标签的背景是否透明 0 背景透明 标签后的背景和图形可见 1 背景不透明 标签后的背景和图形不可见 48 86 标签 续 AutoSize属性用于确定标签是否会随标题内容的多少自动调整标签的大小 True 自动调整标签本身的大小 False 标签的尺寸不能自动调整 超出尺寸范围的内容不予显示 另外 下面这些基本属性与窗体的属性使用相同 Name Height Width Top Left Enabled Visible Font ForeColor BackColor等 49 86 标签 续 例2 5 设计一个窗体 窗体上有1个标签和3个命令按钮 如图2 7 a 所示 程序运行后标签中显示红色的 校园新闻 之后每单击窗体上的 放大 按钮 标签中的字放大并向窗体的下方移动30twip 运行结果如图2 7 b 图2 7 d 所示 每单击窗体上的 缩小 按钮 标签中显示 开始播报 并向窗体的上方移动30twip 运行结果如图2 7 e 图2 7 f 所示 50 86 例2 5 续 图2 7标签属性的使用 51 86 例2 5 续 操作步骤如下 在窗体上添加3个命令按钮和1个标签控件 通过属性窗口设置3个命令按钮的Caption属性和Font属性 各控件的其他主要属性在程序代码中设置 设计界面如图2 7 a 所示 双击窗体或命令按钮 打开代码窗口 编制各命令按钮的单击事件过程 代码如下 52 86 PrivateSubForm Load Label1 AutoSize TrueLabel1 Left 100Label1 Top 100Label1 ForeColor HFF 标签的前景色 字 是红色Label1 Alignment 0Label1 FontSize 9Label1 Caption 校园新闻 EndSubPrivateSubCommand1 Click Label1 FontSize Label1 FontSize 3Label1 Top Label1 Top 30EndSub 53 86 PrivateSubCommand2 Click Label1 Alignment 1Label1 Caption 开始播报 Label1 FontSize Label1 FontSize 3Label1 Top Label1 Top 30EndSubPrivateSubCommand3 Click Label1 Left 100Label1 Top 100Label1 Alignment 0Label1 FontSize 9Label1 Caption 校园新闻 EndSub 54 86 标签 续 2 事件标签可响应单击 Click 和双击 DblClick 事件 但一般情况下不对它们进行编程 3 方法标签控件支持Move方法 用于实现标签的移动 使用方法与窗体的Move方法基本相同 55 86 文本框 TextBox 文本框控件是一个文本编辑区域 在该区域可以输入 编辑和输出文本内容 1 属性 Text属性用于设置文本框中显示的文本 注意 文本框没有Caption属性 MultiLine用于设置文本框是否以多行方式显示文本 False 允许单行显示 默认 True 多行显示 56 86 文本框 续 Maxlength设置文本框中最多字符个数 默认值为0 表示无字符个数的限制 ScrollBars用于设置当文本框中的文本超长时 文本框是否可加滚动条 0 None 无滚动条 1 Horizontal 有水平滚动条 2 Vertical 有垂直滚动条 3 Both 有水平和垂直滚动条 注意 当MultiLine为True时 该属性才有效 57 86 文本框 续 Locked用于设置文本框中的文本是否可被编辑 默认值为False 表示可以被编辑 若值为真 则只能输出而不能输入 PassWordChar设置该属性是为了掩盖文本框中输入的字符 例如 在文本框中输入密码时显示为星号 则将该属性值设置为 而Text属性接收的仍是用户输入的文本 如果要恢复文本框中文本的正常显示 将该属性值设为空串即可 58 86 文本框 续 SelStart SelLength和SelText属性这三个属性是对文本框中文本的编辑属性 SelStart 确定在文本框中选定文本的起始位置 第一字符的位置为0 SelLength 设置或返回文本框中选定的文本字符串长度 字符个数 SelText 设置或返回当前选定文本字符串 另外 下面这些属性与窗体的属性使用相同 Name Height Width Top Left Enabled Visible Font ForeColor BackColor 59 86 PrivateSubCommand1 Click PrintText1 SelStartPrintText1 SelLengthPrintText1 SelTextEndSub 例如 单击Command1 在窗体中显示文本框中被选中文本的起始位置 字符个数及选定文本字符串 文本框 续 60 86 3 事件 Change事件当改变文本框的Text属性时会引发该事件 例如有如下程序代码 PrivateSubText1 Change PrintText1 textEndSub当程序运行后 在文本框中输入 ABCD 则在窗体上输出结果是 文本框 续 AABABCABCD 61 86 KeyPress事件在文本框中每键入一个字符 就会触发一次该事件 并将字符的Ascii值传送给该事件过程的KeyAscii参数 例如 PrivateSubText1 KeyPress KeyAsciiAsInteger PrintKeyAscii Chr KeyAscii EndSub在程序运行中输入ABCD 则在窗体上输出 65A66B67C68D 文本框 续 思考 KeyPress事件和Change事件的异同 62 86 LostFocus 失去焦点 事件当用户用 Tab 键或鼠标选择其他对象而离开文本框控件时 触发该事件 通常用该事件检查文本框中的内容 GotFocus 获得焦点 事件控件获得焦点时发生 文本框 续 63 86 4 常用方法文本框最常用的方法是 SetFocus 使用形式 对象 SetFocus功能 把光标移到指定的文本框对象中 文本框 续 64 86 通过前面的例子可以归纳出创建VisualBasic应用程序的步骤如下 新建工程 界面设计 编写程序代码 运行与调试程序 保存工程 下面通过一个例子再进一步详细介绍建立VisualBasic应用程序的方法 2 3创建VB应用程序的步骤 65 86 2 3创建VB应用程序的步骤 续 例2 6 设计一个能够实现两个数的加 减 乘 除的计算器 设计界面如图2 8 a 所示 运行界面如图2 8 b 和2 8 c 所示 a b 图2 8计算器的界面 c 66 86 2 3创建VB应用程序的步骤 续 1 新建工程2 界面设计在窗体上添加控件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论