机械-热化-第三章基本控

上传人:san****019 文档编号:21705679 上传时间:2021-05-07 格式:PPT 页数:89 大小:867.50KB
收藏 版权申诉 举报 下载
机械-热化-第三章基本控_第1页
第1页 / 共89页
机械-热化-第三章基本控_第2页
第2页 / 共89页
机械-热化-第三章基本控_第3页
第3页 / 共89页
资源描述:

《机械-热化-第三章基本控》由会员分享,可在线阅读,更多相关《机械-热化-第三章基本控(89页珍藏版)》请在装配图网上搜索。

1、第 三 章 基 本 控 件 学 习 要 求 要 求 读 者 通 过 本 章 的 学 习 , 掌 握 VB基 本 控 件 的 特点 、 常 用 属 性 、 事 件 和 方 法 , 并 能 够 熟 练 地 运 用 这 些 基 本 控件 编 写 各 种 VB应 用 程 序 以 解 决 实 际 问 题 。学 习 提 示 Visual Basic为 我 们 设 计 程 序 界 面 、 调 用 系 统 资源 提 供 了 强 大 的 工 具 控 件 。 控 件 是 VB程 序 设 计 的 基 础 , 也是 VB提 供 给 我 们 的 一 种 可 视 化 编 程 工 具 。 VB常 用 的 基 本 控 件有

2、: 文 本 框 、 标 签 框 、 命 令 按 钮 、 单 选 按 钮 、 复 选 框 和 框 架控 件 等 。 各 种 类 型 的 控 件 都 有 其 特 殊 的 属 性 、 事 件 和 方 法 。主 要 内 容 本 章 介 绍 了 部 分 基 本 控 件 的 特 点 及 其 使 用 用 法 ,基 本 控 件 包 括 : 文 本 框 、 标 签 框 、 命 令 按 钮 、 单 选 按 钮 、 复选 框 、 框 架 、 图 形 控 件 、 选 择 控 件 、 文 件 系 统 控 件 、 定 时 器控 件 及 滚 动 条 等 常 用 控 件 。 第 一 章 文 本 框 和 标 签 框 程 序 运

3、 行 中 , 需 要 通 过 键 盘 接 收 用 户 输 入 的 信 息 , 或 把有 关 的 信 息 显 示 在 屏 幕 上 。 在 Visual Basic中 , 可 以 用 文 本框 和 标 签 框 实 现 信 息 的 输 入 和 输 出 。 本 节 介 绍 文 本 框 和 标 签框 的 特 点 以 及 使 用 方 法 。一 、 文 本 框 文 本 框 ( TextBox) 是 程 序 中 最 常 用 的 输 入 和 输 出 控 件 ,用 户 可 以 在 文 本 框 中 输 入 、 编 辑 和 显 示 文 本 内 容 。 文 本 框 在工 具 箱 中 的 图 标 为 。 关 于 属 性

4、、 事 件 和 方 法 的 概 念 已 在 前 面 作 了 介 绍 。 “ 属性 ” 用 来 表 示 对 象 的 特 性 。 “ 事 件 ” 是 指 由 VB系 统 事 先 设 定的 、 能 为 对 象 感 知 、 识 别 和 响 应 的 动 作 。 “ 方 法 ” 是 VB提 供的 一 种 特 殊 的 子 程 序 , 用 来 完 成 特 定 的 操 作 。 接 下 来 , 主 要通 过 例 题 来 介 绍 文 本 框 的 常 用 属 性 、 事 件 和 方 法 及 其 应 用 。 文 本 框 的 常 用 属 性 有 :1. Text属 性 : 字 符 串 类 型 。 返 回 或 设 置 文

5、本 框 中 显 示 的 内 容 。2. TabIndex属 性 : 控 制 按 Tab键 时 焦 点 变 化 的 顺 序 。 TabIndex的 值从 开 始 , 焦 点 按 TabIndex属 性 值 从 小 到 大 依 次 跳 转 。3. TabStop属 性 : 控 制 按 Tab键 时 ,使 某 个 控 件 “ 轮 空 ” 与 否 。 一 般控 件 的 TabStop属 性 的 缺 省 值 为 True, 表 示 按 Tab键 时 光 标 移 到 本控 件 处 “ 停 下 来 ” , 即 焦 点 正 常 地 移 到 本 控 件 。 若 设 置 为 False,则 按 Tab键 时 ,

6、光 标 跳 过 本 控 件 不 停 顿 。 4. MaxLength属 性 : 设 置 文 本 框 中 用 户 可 以 输 入 的 字 符 串 长 度是 否 受 到 限 制 。 缺 省 值 为 0, 表 示 该 文 本 框 中 字 符 串 长 度 只 受操 作 系 统 内 存 的 限 制 ; 若 该 属 性 被 设 置 为 大 于 0的 整 数 , 则 表示 文 本 框 中 能 够 输 入 输 出 的 最 大 字 符 数 。5. MultiLine属 性 : 设 置 文 本 框 是 单 行 方 式 还 是 多 行 方 式 , 有True和 False两 种 属 性 值 。 设 置 为 True

7、时 文 本 框 以 多 行 文 本 方式 显 示 文 本 , 一 行 显 示 不 下 的 内 容 会 自 动 换 到 下 行 显 示 ; 否则 , 以 单 行 方 式 显 示 , 超 出 文 本 框 宽 度 的 部 分 会 被 截 掉 。6. PasswordChar属 性 : 该 属 性 用 来 设 置 是 否 在 文 本 框 控 件 中显 示 用 户 键 入 的 实 际 字 符 。 如 果 为 该 属 性 设 置 了 某 一 字 符 ,那么 无 论 Text属 性 值 是 什 么 , 在 文 本 框 中 都 只 显 示 指 定 字 符 。 ( 三 ) 文 本 框 的 常 用 事 件1. C

8、hange事 件 例 题 3-4 设 计 一 个 程 序 , 窗 体 上 有 两 个 文 本 框 和 两 个 命 令 按 钮 , 窗体 外 观 如 图 3-4所 示 。 当 程 序 运 行 时 , 用 户 在 第 一 个 文 本 框 内 输 入 信 息时 , 立 即 在 第 二 个 文 本 框 中 显 示 相 同 的 内 容 ; 在 第 二 个 文 本 框 中 输 入 信息 时 , 立 即 在 第 一 个 文 本 框 中 显 示 相 同 的 内 容 ( 1) 界 面 设 计 见 图 3-4; ( 2) 属 性 设 置 见 表 3-5; 表 3-5 例 题 3-4对 象 属 性 设 置对 象 属

9、 性 设 置窗 体 Caption=文 本 框 的 Change事 件 , ( 名 称 )为 frmChange文 本 框 Text=, ( 名 称 ) 为 txtShow1文 本 框 Text=, ( 名 称 ) 为 txtShow2命 令 按 钮 Caption=清 除 , ( 名 称 ) 为 cmdClear 命 令 按 钮 Caption=退 出 , ( 名 称 ) 为 cmdExit ( 3) 编 写 事 件 过 程 代 码 如 下 :Private Sub txtShow1_Change() txtShow2 = txtShow1End SubPrivate Sub txtShow

10、2_Change() txtShow1 = txtShow2End Sub Private Sub cmdClear_Click() txtShow1 = txtShow2 = End SubPrivate Sub cmdExit_Click() EndEnd Sub 2. KeyPress事 件 我 们 在 文 本 框 内 输 入 数 据 时 , 难 免 会 出 现 错 误 的 数 据 。 怎 样 判 断 、 检查 输 入 数 据 是 否 正 确 有 效 呢 ? 文 本 框 控 件 支 持 KeyPress事 件 , 该 事 件 识 别从 键 盘 上 输 入 的 字 符 。 每 当 用 户

11、从 键 盘 上 敲 入 一 个 字 符 , 就 触 发 KeyPress事 件 。 我 们 可 以 通 过 相 应 的 事 件 过 程 进 行 数 据 校 验 。例 题 3-5 设 计 一 个 程 序 , 窗 体 上 有 一 个 文 本 框 。 运 行 程 序 时 , 当向 文 本 框 中 输 入 字 母 时 , 在 文 本 框 中 显 示 数 字 0, 输 入 其 他 字符 时 不 予 显 示 , 即 不 接 受 其 他 字 符 。分 析 : 大 写 26个 英 文 字 母 的 ASCII码 值 在 65与 90之 间 , 小 写 26个 英 文 字 母 的ASCII码 值 在 97与 12

12、2之 间 , 均 为 连 续 的 字 符 。 如 果 用 户 输 入 的 英 文 字 母 的ASCII值 在 此 范 围 内 , 说 明 输 入 了 字 母 字 符 , 对 应 的 显 示 数 字 0, 否 则 不 予显 示 。 1) 界 面 设 计 如 图 3-5所 示 , 由 窗 体 加 文 本 框 (txtInfo)组 成 , 文 本 框 单 行 、多 行 均 可 。 图 3-5文 本 框 的 KeyPress事 件 应 用 程 序 界 面 ( 2) 编 写 事 件 代 码 如 下 :Dim t As String 定 义 窗 体 级 变 量 tPrivate Sub txtInfo_C

13、hange() txtInfo = tEnd SubPrivate Sub txtInfo_KeyPress(KeyAscii As Integer) c = Chr$(KeyAscii) If (c = a And c = A And c Command2.Caption = - Command3.Caption = 清 空 所 选 课 程 ( 3) 双 击 Command1按 钮 , 在 其 Click事 件 中 编 写 如 下 代 码 :Private Sub Command1_Click() 选 择 课 程 Dim i As Integer 定 义 整 型 变 量 i i = 0 设

14、变 量 i初 值 为 0 Do While i = List1.ListCount - 1 从 List1项 目 的 第 一 个 循 环 到最 后 一 个 If List1.Selected(i) = True Then 如 果 List1的 第 i项 是 被 选 中的 那 么 List2.AddItem List1.List(i) 在 List2中 添 加 List1的 第 i项 List1.RemoveItem i 在 List1中 移 除 其 第 i项 Else i = i + 1 End If LoopEnd Sub 添 加 完 代 码 后 运 行 窗 体 , 从 左 边 列 表 中

15、选 中 几 项 , 再 单 击Command1, 看 看 效 果 如 何 ? 是 否 如 图 3-18 所 示 。 在 步 骤 ( 3) 中 , 我 们 又 用 到 了 列 表 框 3个 新 的 属 性 : List、 ListCount、Selected和 新 方 法 RemoveItem。 下 面 分 别 介 绍 一 下 它 们 的 用 法 。List属 性 : 字 符 串 数 组 。 列 表 框 和 组 合 框 的 List属 性 含 有 多 个 值 , 这 些值 构 成 一 个 数 组 , 数 组 的 每 一 项 都 是 一 个 列 表 项 目 。 引 用 项 目 的 语 法 为 :L

16、ist属 性 : 字 符 串 数 组 。 列 表 框 和 组 合 框 的 List属 性 含 有 多 个 值 , 这 些值 构 成 一 个 数 组 , 数 组 的 每 一 项 都 是 一 个 列 表 项 目 。 引 用 项 目 的 语 法 为 :对 象 名 .List( i )其 中 , 对 象 名 为 列 表 框 或 组 合 框 名 , i为 项 目 的 索 引 号 , 取 值 范 围 是0ListCount-1。在 设 计 模 式 下 , 可 以 通 过 属 性 窗 口 的 List下 拉 框 中 输 入 项 目 。 若 要 连 续 输入 多 个 项 目 , 在 每 输 入 一 项 后 ,

17、 可 以 按 Ctrl+Enter, 便 可 继 续 输 入 下 一个 项 目 。 当 所 有 项 目 输 入 后 , 再 按 Enter键 。ListCount属 性 : 整 型 数 值 , 用 于 返 回 列 表 框 或 组 合 框 中 列 表 项 目 的 个数 即 List数 组 中 的 元 素 个 数 。Selected属 性 : 返 回 或 设 置 列 表 框 控 件 中 的 一 个 项 目 的 选 择 状 态 ( 注 意 ,组 合 框 控 件 无 此 属 性 ) 。 该 属 性 是 一 个 逻 辑 类 型 的 数 组 , 数 组 元 素 个 数与 列 表 框 中 的 项 目 数 相

18、 同 , 其 下 标 的 变 化 范 围 与 List属 性 相 同 。 ListIndex属 性 : 整 型 数 值 , 用 于 返 回 或 设 置 列 表 框 控 件 或 组 合 框 控 件中 当 前 选 择 项 目 的 索 引 , 第 一 个 项 目 的 索 引 为 0, 而 最 后 一 个 项 目 的 索 引 为ListCount-1。 如 果 没 有 选 中 , 则 ListIndex属 性 值 为 -1。 表 3-18 各 对 象 的 主 要 属 性 设 置对 象 属 性 (属 性 值 ) 属 性 (属 性 值 )窗 体 Name(FrmSample) Caption(“ 选 择

19、控 件 示 例 ” ), BorderStyle(1- Fixed Single)标 签 1 Name(LblSample) Caption(“ 字 体 设 置 示 例 ” ), Alignment(2 Center)标 签 2 Name(Label2) Caption(“ 字 体 ” )标 签 3 Name(Label3) Caption(“ 字 号 ” )标 签 4 Name(Label4) Caption(“ 颜 色 ” )标 签 5 Name(Label5) Caption(“ 字 形 ” )选 框 1 Name(ChkUnderLine) Caption(“ 下 划 线 ” ) 选

20、框 2 Name(ChkStrikethrough) Caption(“ 删 除 线 ” )合 框 1 Name(CboFontName) Style (2 Dropdown List)合 框 2 Name(CboFontSize) Style (2 Dropdown List)合 框 3 Name(CboFontColor) Style (2 Dropdown List)表 框 1 Name(LstFontStyle) Style (0 Standard) (默 认 值 ) 程 序 代 码 如 下 :Option ExplicitPrivate Sub Form_Load() LblSamp

21、le.AutoSize = True 为 字 形 LstFontStyle列 表 框 添 加 项 目 With LstFontStyle .AddItem 常 规 .AddItem 粗 体 .AddItem 斜 体 .AddItem 粗 体 斜 体 End With 令 LstFontStyle第 一 项 被 选 中 LstFontStyle.Text = 常 规 给 字 体 CboFontName下 拉 列 表 框 添 加 项 目 Dim i As Integer For i = 0 To Screen.FontCount - 1 CboFontName.AddItem Screen.Fon

22、ts(i) Next i 令 默 认 字 体 为 “ 宋 体 ” CboFontName.Text = 宋 体 LblSample.FontName = 宋 体 给 字 号 CboFontSize下 拉 列 表 框 添 加 项 目 For i = 10 To 40 Step 2 CboFontSize.AddItem Str(i) Next i 令 默 认 字 号 为 10 CboFontSize.ListIndex = 0 LblSample.FontSize = 10 给 颜 色 CboFontColor下 拉 列 表 框 添 加 项 目 With CboFontColor .AddIte

23、m 黑 色 .AddItem 红 色 .AddItem 绿 色 .AddItem 黄 色 .AddItem 蓝 色 .AddItem 紫 红 色 .AddItem 青 色 .AddItem 白 色 End With 令 默 认 颜 色 为 黑 色 CboFontColor.Text = 黑 色 LblSample.ForeColor = vbBlack vbBlack 为 VB保 留 字 ,表 示 黑 色 。 End Sub CboFontName.Text = 宋 体 LblSample.FontName = 宋 体 给 字 号 CboFontSize下 拉 列 表 框 添 加 项 目 Fo

24、r i = 10 To 40 Step 2 CboFontSize.AddItem Str(i) Next i 令 默 认 字 号 为 10 CboFontSize.ListIndex = 0 LblSample.FontSize = 10 给 颜 色 CboFontColor下 拉 列 表 框 添 加 项 目 With CboFontColor .AddItem 黑 色 .AddItem 红 色 .AddItem 绿 色 .AddItem 黄 色 .AddItem 蓝 色 .AddItem 紫 红 色 .AddItem 青 色 .AddItem 白 色 End With 令 默 认 颜 色

25、为 黑 色 CboFontColor.Text = 黑 色 LblSample.ForeColor = vbBlack vbBlack 为 VB保 留 字 ,表 示 黑 色 。End Sub Text属 性 : 对 于 下 拉 式 组 合 框 与 简 单 组 合 框 , Text属 性 返 回 编 辑 区 域 中的 文 本 。 对 于 列 表 框 控 件 或 下 拉 列 表 框 , Text属 性 的 返 回 值 总 与List(ListIndex)的 值 相 同 。Screen对 象 : 代 表 了 整 个 Windows桌 面 , 它 提 供 了 一 种 不 需 要 知 道 窗 体 或控

26、件 的 名 称 就 能 使 用 它 的 一 种 方 法 。 其 中 , Screen.Fonts返 回 当 前 显 示 器或 活 动 打 印 机 可 用 的 所 有 字 体 名 。 Fonts是 字 符 串 数 组 。 Screen.FontCount返 回 屏 幕 可 用 的 字 体 数 。 其 他 Screen对 象 的 属 性 限 于 篇 幅 , 这 里 不 再 介 绍 ,请 读 者 查 阅 相 关 资 料 。Color常 数 : VB系 统 将 常 用 颜 色 以 保 留 字 的 形 式 表 示 , 方 便 记 忆 。 表 3-19列 出 了 常 用 的 颜 色 常 数 。表 3-19

27、 Color常 数 常 数 值 描 述vbBlack 0 x0 黑 色vbRed 0 xFF 红 色vbGreen 0 xFF00 绿 色vbYellow 0 xFFFF 黄 色vbBlue 0 xFF0000 蓝 色vbMagenta 0 xFF00FF 紫 红 色vbCyan 0 xFFFF00 青 色vbWhite 0 xFFFFFF 白 色 Private Sub CboFontColor_Click() 设 置 字 体 颜 色 过 程 Select Case CboFontColor.Text Case 黑 色 : LblSample.ForeColor = vbBlack Case

28、 红 色 : LblSample.ForeColor = vbRed Case 绿 色 : LblSample.ForeColor = vbGreen Case 黄 色 : LblSample.ForeColor = vbYellow Case 蓝 色 : LblSample.ForeColor = vbBlue Case 紫 红 色 : LblSample.ForeColor = vbMagenta Case 青 色 : LblSample.ForeColor = vbCyan Case 白 色 : LblSample.ForeColor = vbWhite End SelectEnd Su

29、bPrivate Sub CboFontName_Click() 设 置 字 体 名 过 程 LblSample.FontName = CboFontName.Text End SubPrivate Sub CboFontSize_Click() 设 置 字 号 过 程 LblSample.FontSize = Val (CboFontSize.Text)End SubPrivate Sub ChkStrikethrough_Click() 设 置 字 体 删 除 线 过 程 If ChkStrikethrough.Value = 1 Then LblSample.FontStrikethru

30、 = True 标 签 LblSample的 删 除 线 为 真Else LblSample.FontStrikethru = False 标 签 LblSample的 删 除 线 为 假End IfEnd SubPrivate Sub ChkUnderLine_Click() 设 置 字 体 下 划 线 过 程If ChkUnderLine.Value = 1 Then LblSample.FontUnderline = True 标 签 LblSample的 下 划 线 为 真 Else LblSample.FontUnderline = False 标 签 LblSample的 下 划

31、线 为 假End IfEnd SubPrivate Sub LstFontStyle_Click() 设 置 字 形 过 程 Select Case LstFontStyle.ListIndex 判 断 字 形 列 表 框 的 项 目 索 引值 Case 0: 当 索 引 ListIndex=0, 即 “ 常 规 ”时 LblSample.FontBold = False 标 签 粗 体 为 假 LblSample.FontItalic = False 标 签 斜 体 为 假 Case 1: 当 索 引 ListIndex=1, 即 “ 粗 体 ”时 LblSample.FontBold =

32、True LblSample.FontItalic = False Case 2: 当 索 引 ListIndex=2, 即 “ 斜 体 ”时 LblSample.FontItalic = True LblSample.FontBold = False Case 3: 当 索 引 ListIndex=3, 即 “ 粗 体 斜 体 ” 时 LblSample.FontBold = True LblSample.FontItalic = True End Select LblSample.FontStrikethru = False 标 签 LblSample的 删 除 线 为 假End IfEn

33、d SubPrivate Sub ChkUnderLine_Click() 设 置 字 体 下 划 线 过 程If ChkUnderLine.Value = 1 Then LblSample.FontUnderline = True 标 签 LblSample的 下 划 线 为 真Else LblSample.FontUnderline = False 标 签 LblSample的 下 划 线 为 假End IfEnd SubPrivate Sub LstFontStyle_Click() 设 置 字 形 过 程 Select Case LstFontStyle.ListIndex 判 断 字

34、 形 列 表 框 的 项 目 索 引 值 Case 0: 当 索 引 ListIndex=0, 即 “ 常 规 ” 时 LblSample.FontBold = False 标 签 粗 体 为 假 LblSample.FontItalic = False 标 签 斜 体 为 假 Case 1: 当 索 引 ListIndex=1, 即 “ 粗 体 ” 时 LblSample.FontBold = True LblSample.FontItalic = False Case 2: 当 索 引 ListIndex=2, 即 “ 斜 体 ” 时 LblSample.FontItalic = True

35、 LblSample.FontBold = False Case 3: 当 索 引 ListIndex=3, 即 “ 粗 体 斜 体 ” 时 LblSample.FontBold = True LblSample.FontItalic = True End Select 第 五 节 文 件 系 统 控 件一 、 驱 动 器 列 表 控 件 ( DriveListBox)图 3-24 20 驱 动 器 列 表 框驱 动 器 列 表 框 是 一 种 下 拉 式 列 表 框 , 能 够 自 动 列 出 计 算 机 上 所 有 的 硬 图 3-20 驱 动 器 列 表 框 盘 、 软 盘 和 光 盘

36、驱 动 器 。 且 用 户 不 能 修 改 其 中 条 目 。 如 图 3-20所 示 。 用 户 常 一 个 重 要 属 性 Drive。Drive属 性 : 该 属 性 用 来 在 程 序 运 行 期 间 返 回 或 设 置 当 前 显 示的 或 用 户 选 择 的 驱 动 器 号 及 卷 标 , 默 认 值 为 当 前 驱 动 器 。 该属 性 设 计 时 不 可 用 。 当 Dive值 改 变 时 , 会 引 发 其 Change事 件 。格 式 : 对 象 .Drive=指 定 所 选 择 的 驱 动 器 。 如 “ A:” 、 “ C:” 等 。从 列 表 框 中 选 择 驱 动

37、器 并 不 能 改 变 计 算 机 系 统 当 前 的 工 作 驱 动器 。 但 可 以 通 过 ChDrive语 句 来 实 现 。 如 ChDrive Drive1.Drive。 二 、 目 录 列 表 控 件 ( DirListBox)图 3-25 21 目 录 列 表 框目 录 列 表 框 以 层 次 结 构 显 示 指 定 目 录 下 所 有 的 一 级 子 目 录 。 如 图 3-21所 示 。用 户 常 用 属 性 Path。Path属 性 : 用 于 返 回 或 设 置 当 前 属 性 。 默 认 值 是 当 前 路 径 。 该 属 性 设 计 时是 不 可 用 的 。 当 P

38、ath值 改 变 时 , 会 引 发 其 Change事 件 。格 式 : 对 象 .Path=表 示 路 径 名 的 字 符 串 表 达 式 。 如 “ C:mydir” 。从 列 表 框 中 选 择 目 录 并 不 能 改 变 计 算 机 系 统 当 前 的 工 作 目 录 。 但 可 以 通 过ChDir语 句 来 实 现 。 图 3-21 目 录 列 表 框 三 、 文 件 列 表 控 件 ( FileListBox)1.Path属 性 。 用 于 返 回 或 设 置 文 件 列 表 框 当 前 目 录 , 设 计 时 不 可 用 。 如“ C:Program FilesJava” 。

39、 当 Path值 改 变 时 , 会 引 发 其 Change事 件 。2.Pattern属 性 。 用 于 返 回 或 设 置 文 件 列 表 框 所 显 示 的 文 件 类 型 。 可 在 设 计状 态 或 在 程 序 运 行 时 设 置 。 如 File1.Pattern= *.bmp;*.jpg;*.gif。默 认 值 为 “ *.*” , 表 示 显 示 所 有 的 文 件 。 当 Pattern值 改 变 时 , 会 引 发其 PatternChange事 件 。3.FileName属 性 。 用 于 返 回 或 设 置 被 选 定 文 件 的 文 件 名 , 设 计 时 不 可

40、用。 图 3-22 文 件 列 表 框 四 、 文 件 系 统 控 件 的 联 动例 题 3-16: 新 建 一 个 窗 体 , 界 面 如 图 3-23所 示 。 要 求 程 序 运 行时 , 文 件 系 统 控 件 联 动 ; 在 文 件 列 表 框 中 选 择 每 个 文 件 , 都能 显 示 出 其 完 整 的 路 径 和 文 件 名 。图 3-23 文 件 系 统 控 件 联 动 示 例 表 3-20各 对 象 的 主 要 属 性 设 置对 象 属 性 (属 性 值 ) 属 性 (属 性 值 )窗 体 Name(Form1) Caption(“ 文 件 系 统 控 件 联 动示 例

41、” )标 签 1 Name(Label1) C a p t i o n ( “ ” ) , BorderStyle(1-fixed single)标 签 2 Name(Label2) Caption(“ 当 前 选 中 的 文 件 ” )框 架 Name(Frame1) Caption(“ ” )驱 动 器控 件 Name(Drive1) 目 录 控件 Name(Dir1) 文 件 控 件 Name(File1) 程 序 代 码 如 下 :Option ExplicitPrivate Sub Dir1_Change() File1.Path = Dir1.Path 设 置 文 件 列 表 框

42、与 目 录 列 表 框 联 动End SubPrivate Sub Drive1_Change() Dir1.Path = Drive1.Drive 设 置 目 录 列 表 框 与 驱 动 器 列 表 框 联 动End SubPrivate Sub File1_Click() Dim Fname As String If Right(File1.Path, 1) = Then Fname = File1.Path & File1.FileName Else Fname = File1.Path & & File1.FileName End If Label1.Caption = Fname E

43、nd SubPrivate Sub Form_Load() ChDrive App.Path 设 置 当 前 驱 动 器 ChDir App.Path 设 置 当 前 目 录End Sub 第 六 节 定 时 器 控 件1.属 性( 1) Interval属 性 : 该 属 性 表 示 两 个 定 时 器 事 件 这 间 的 时 间 间 隔 , 是 定 时器 最 重 要 的 属 性 。 其 属 性 值 以 毫 秒 ( ms) 为 单 位 , 取 值 范 围 为 064767之 间 ( 包 括 这 两 个 数 值 ) 。 当 Interval=1000时 , 表 示 时 间 间 隔 为 1秒 钟

44、 。当 Interval=0时 , 表 示 屏 蔽 定 时 器 。 因 为 计 时 器 在 1秒 钟 内 最 多 产 生 18个 事 件 , 所 以 两 个 事 件 之 间 的 时 间 间 隔 精 确 度 不 超 过 1/18秒 。( 2) Enabled属 性 : 只 要 Enabled=True并 且 Interval0, 则 定 时 器 工 作 ;当 Enabled=False时 , 定 时 器 停 止 工 作 。2.Timer事 件 : 定 时 器 只 能 响 应 这 一 事 件 。 当 Enabled=True并 且 Interval0时 , Timer事 件 以 Interval属

45、 性 指 定 的 时 间 间 隔 发 生 , 需 要 定 时 执 行 的操 作 即 放 在 该 事 件 过 程 中 完 成 。例 题 3-17: 新 建 一 个 窗 体 , 界 面 如 图 3-24所 示 。 要 求 : 程 序 运 行 时 , 标 签 显 示 当 前 时 间 , 每 隔 1秒 更 新 一 次 时 间 ; 时 间 标 签 在 窗 体 内 上 下 左 右 移动 , 设 每 19毫 秒 移 动 10twip( 窗 体 坐 标 默 认 单 位 ) 。 移 动 方 式 遵 循 反 弹规 律 , 即 触 窗 体 边 缘 后 反 弹 ; 每 隔 3秒 , 时 间 标 签 的 颜 色 随 机

46、 变 化 一 次 。 图 3-24 定 时 器 控 件 示 例 在 属 性 窗 口 中 按 表 3-21设 置 各 对 象 的 属 性 。表 3-21各 对 象 的 主 要 属 性 设 置对 象 属 性 (属 性值 ) 属 性 (属 性 值 )窗 体 Name(Form1) C a p t i o n ( “ 定 时 器 控 件 示例 ” ) ,BorderStyle(1-fixed single)标 签 1 Name(LblNow) C a p t i o n ( “ L a b e l 1 ” ) ,AutoSize(True)定 时 器控 件 1 Name(Timer1) 定 时 器控

47、件 2 Name(Timer2) 定 时 器控 件 3 Name(Timer3) 程 序 代 码 如 下 :Option ExplicitDim step1 As IntegerDim step2 As IntegerPrivate Sub Form_Load() Timer1.Interval = 1000 时 钟 1的 时 间 间 隔 为 1秒 Timer1.Enabled = True Timer2.Interval = 19 时 钟 2的 时 间 间 隔 为 19毫 秒 Timer2.Enabled = True Timer3.Interval = 3000 时 钟 3的 时 间 间

48、隔 为 3秒 Timer3.Enabled = True With LblNow 定 义 时 间 标 签 属 性 .FontSize = 18 .FontName = 隶 书 .Caption = 当 前 时 间 & Time() End With step1 = 1 step2 = 1End SubPrivate Sub Timer1_Timer() LblNow.Caption = 当 前 时 间 & Time() 每 隔 1秒 更 新 标 签 内 容 为 当 前 时 间End SubPrivate Sub Timer2_Timer() Call MyMove 调 用 MyMove过 程

49、移 动 时 间 标 签 LblNow.Refresh 标 签 自 动 刷 新End Sub Private Sub Timer3_Timer() Randomize (Timer) 初 始 化 随 机 函 数 LblNow.ForeColor = Rnd * &HFFFFFF 时 间 标 签 每 3秒 取 得 一 个 随 机颜 色End Sub自 定 义 过 程 MyMove, 使 时 间 标 签 在 窗 体 内 上 下 左 右 移 动 。Private Sub MyMove() LblNow.Top = LblNow.Top + 10 * step1 LblNow.Left = LblNow

50、.Left + 10 * step2 If LblNow.Top = form2.Height - 2 * LblNow.Height Then step1 = -1 ElseIf LblNow.Top = form2.Width - LblNow.Width Then step2 = -1 ElseIf LblNow.Left = 0 Then step2 = 1 End IfEnd Sub 第 七 节 滚 动 条 控 件表 3-22 水 平 、 垂 直 滚 动 条 的 重 要 属 性属 性 描 述Max和Min Max和 Min分 别 决 定 了 当 滑 块 处 于 滚 动 条 的 最 大

51、 位置 和 最 小 位 置 时 , 所 代 表 的 值 。二 者 的 取 值 范 围 为 -3276832767之 间 。 默 认 值Max为 32767, Min为 0。SmallChange 该 属 性 又 被 称 为 最 小 变 动 值 属 性 , 它 表 示 当 用 户单 击 滚 动 条 两 端 的 箭 头 时 , 滑 块 移 动 的 增 值 量 。取 值 范 围 : 132767。LargeChange 该 属 性 又 被 称 为 最 大 变 动 值 属 性 , 它 表 示 当 用 户单 击 滚 动 条 的 空 白 处 时 , 滑 块 移 动 的 增 值 量 。 取 值 范 围 :

52、132767。Value 该 属 性 表 示 滚 动 条 内 滑 块 所 处 位 置 所 代 表 的 值 。 表 3-23 水 平 、 垂 直 滚 动 条 的 重 要 事 件 表 3-24各 对 象 的 主 要 属 性 设 置对 象 属 性 (属 性 值 ) 属 性 (属 性 值 )窗 体 Name(Form1) C a p t i o n ( “ 滚 动 条 控 件 示例 ” ) ,BorderStyle(1-fixed single)水 平 滚 动 条1 Name(HsbRed) 代 表 红 色 调 节 器水 平 滚 动 条2 Name(HsbGreen) 代 表 绿 色 调 节 器水 平

53、 滚 动 条3 Name(HsbBlue) 代 表 蓝 色 调 节 器标 签 1 Name(LblExample) Caption(“ 颜 色 调 节 器 ” ), AutoSize(True),Font(黑 体 , 加 粗 , 36磅 )标 签 2 Name(Label2) Caption(“ 红 ” ) 标 签 3 Name(Label3) Caption(“ 绿 ” )标 签 4 Name(Label4) Caption(“ 蓝 ” )标 签 5 Name(LblRed) Caption(“ ” )标 签 6 Name(LblGreen) Caption(“ ” )标 签 7 Name(

54、LblBlue) Caption(“ ” ) 程 序 代 码 如 下 :Option ExplicitDim R%, G%, B% 定 义 三 个 模 块 级 变 量 R,G,BPrivate Sub Form_Load() R = 0: G = 0: B = 0 给 三 个 变 量 都 设 定 初 值 0 With HsbRed 设 置 “ 红 色 ” 调 节 滚 动 条 .Max = 255 .Min = 0 .LargeChange = 20 .SmallChange = 1 .Value = 0 End With With HsbGreen 设 置 “ 绿 色 ” 调 节 滚 动 条

55、.Max = 255 .Min = 0 .LargeChange = 20 .SmallChange = 1 .Value = 0 End With 三 个 标 签 显 示 三 个 滚 动 条 的 值 LblRed.Caption = HsbRed.Value LblGreen.Caption = HsbGreen.Value LblBlue.Caption = HsbBlue.ValueEnd Sub 蓝 色 滚 动 条 HsbBlue的 Change事 件 过 程 代 码Private Sub HsbBlue_Change() B = HsbBlue.Value 将 蓝 色 滚 动 条 的

56、 值 给 变 量 B LblBlue.Caption = HsbBlue.Value 将 蓝 色 滚 动 条 的 值 在 标 签 中 显 示 出 来 LblExample.ForeColor = RGB(R, G, B) 滚 动 条 的 变 化 传 递 给 标 签 的 前 景 颜 色End Sub 绿 色 滚 动 条 HsbGreen的 Change事 件 过 程 代 码Private Sub HsbGreen_Change() G = HsbGreen.Value LblGreen.Caption = HsbGreen.Value LblExample.ForeColor = RGB(R,

57、G, B)End Sub 红 色 滚 动 条 HsbRed的 Change事 件 过 程 代 码Private Sub HsbRed_Change() R = HsbRed.ValueLblRed.Caption = HsbRed.Value LblExample.ForeColor = RGB(R, G, B)End Sub 小 结 本 章 主 要 通 过 实 例 的 讲 解 来 过 程 介 绍 常 用 基 本 控 件 的 主要 属 性 、 事 件 和 方 法 , 而 不 是 简 单 的 知 识 堆 叠 。 读 者 在 实 际操 作 各 实 例 的 过 程 中 , 自 然 就 体 会 到 了

58、 控 件 的 用 法 。 本 章 介绍 的 重 点 是 选 择 控 件 , 篇 幅 稍 多 些 。 每 种 控 件 的 应 用 实 例 都是 作 者 精 心 设 计 和 安 排 的 , 希 望 能 起 来 通 俗 易 懂 的 效 果 。 本章 没 有 介 绍 所 有 的 常 用 控 件 , 主 要 目 的 是 通 过 几 个 典 型 的 控件 讲 解 , 以 最 小 的 篇 幅 , 以 最 少 的 时 间 来 快 速 提 高 读 者 学 习控 件 的 方 法 。 至 于 其 他 的 控 件 用 法 , 可 参 阅 相 应 资 料 。 独 立查 阅 资 料 本 身 就 是 一 项 重 要 能 力 。

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

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

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


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