当前位置:编程学习 > VB >>

VB5.0下工具条的制作

答案:
VB5.0下工具条的制作
作者:况正谦
---- 工 具 条(Tool bar) 是Windows 环 境 下 应 用 程 序 常 用 的 界 面 元 素。 把 菜 单 中 常 用 的 命 令 做 成 按 钮 安 排 在 工 具 条 中, 配 上 适 当 的 图 标 符 号 和 文 本 提 示, 确 实 极 大 地 方 便 了 用 户。 以Microsoft Word 7.0 for Windows 95 的 工 具 条 为 例, 其 中 的 内 容 和 功 能 非 常 丰 富。Word 7.0 工 具 条 中 不 仅 包 含 与 文 件 操 作 等 有 关 的 常 规 图 标 按 钮, 还 有 设 置 字 体 字 号 等 等 的 组 合 框(Combo box)。 按 钮 之 间 可 以 分 组, 例 如 设 置 段 落 对 齐 方 式 的 一 组 按 钮, 同 组 中 的 按 钮 每 次 只 允 许 有 一 个 被 按 下, 按 下 一 个 按 钮 时, 同 组 中 其 它 按 钮 自 动 弹 起。 另 外,Word 7.0 的 工 具 条 还 有 用 户 裁 剪(Customize) 功 能。 用 户 在 工 具 条 上 双 击 鼠 标 时, 工 具 条 弹 出 一 个 裁 剪 对 话 框, 用 户 可 以 隐 藏、 显 示 以 及 重 新 排 列 工 具 条 中 的 按 钮。 如 果 在 我 们 自 己 开 发 的 软 件 界 面 中 加 上 这 样 的 工 具 条, 我 们 的 软 件 就 可 以 与 商 业 软 件 相 媲 美 了。
---- 在 诸 多Windows 应 用 程 序 开 发 平 台 中,Microsoft Visual BASIC 以 易 学 易 用、 功 能 强 大 的 优 点 特 出 独 立, 成 为 开 发Windows 应 用 程 序 的 首 选 平 台 之 一。 在VB 4.0 及 以 前 的 版 本 中, 开 发 象Word 7.0 中 的 工 具 条 还 是 颇 费 辛 苦 的。 一 般 思 路 是 在 窗 体(Form) 中 安 放 一 个 图 片 框(PictureBox) 作 为 容 器(Container), 再 往 其 中 加 入 图 象(Image) 控 件, 用 图 象 控 件 载 入 图 标 来 模 拟 按 钮。 对 多 个 按 钮 的 控 制 要 分 别 完 成, 管 理 较 为 复 杂。 在VB 5.0 中, 系 统 提 供 了 一 个 专 门 的 工 具 条 控 件Toolbar。 用Toolbar 来 实 现 类 似Word 7.0 中 的 工 具 条 非 常 方 便。

工 具 条 控 件Toolbar 简 介 ---- 1. 在 工 具 箱 中 加 入Toolbar
---- 工 具 条 控 件Toolbar 不 在VB 5.0 工 具 箱(Toolbox) 的 常 规 标 准 控 件 之 列, 因 此 在 首 次 安 装VB 5.0 后, 工 具 箱 中 并 没 有Toolbar。 在 工 具 箱 中 加 入Toolbar 要 通 过Project 菜 单 中 的Components 命 令, 该 命 令 弹 出 一 个 选 择 安 装 组 件 的 窗 口。 在Components 窗 口 的Controls 组 中 找 到“Microsoft Windows Common Controls 5.0” 项, 单 击 标 记 该 项, 然 后 单 击“ 确 定” 按 钮,Toolbar 和 另 外 一 些 控 件 就 加 入 工 具 箱 了。

---- 2. Toolbar 的 功 能

---- Toolbar 中 可 以 加 入 按 钮, 每 个 按 钮 都 可 以 载 入 自 己 的 图 象、 设 置 标 题(Caption)。 还 可 以 为 每 个 按 钮 设 置 简 短 的 提 示 字 符 串, 程 序 运 行 时, 当 鼠 标 指 针 移 到 按 钮 上 时, 在 指 针 附 近 会 自 动 浮 出 提 示 字 符 串。 在 程 序 运 行 时, 可 以 随 时 增 加 或 删 除 按 钮。Toolbar 为 其 中 的 按 钮 提 供 了 分 组 功 能, 用 户 只 需 简 单 地 设 置 一 个 按 钮 的Style 属 性 就 能 实 现 按 钮 之 间 的 分 组。Toolbar 同 时 还 是 一 个 容 器 类 控 件, 可 以 在 其 中 加 入 组 合 框 等 其 它 控 件。Toolbar 的AllowCustomize 属 性 允 许 用 户 在 程 序 运 行 时 双 击 工 具 条 对 其 中 的 内 容 进 行 裁 剪。 根 据 这 些 功 能, 用 户 就 可 以 轻 而 易 举 地 在 自 己 开 发 的 应 用 程 序 中 加 入 类 似Word 7.0 风 格 的 工 具 条 了。

Toolbar 的 制 作
---- Toolbar 的 制 作 包 括 以 下 步 骤: 在 窗 体 中 加 入Toolbar 控 件; 在Toolbar 中 加 入 按 钮; 为 按 钮 载 入 图 象 并 设 置 其 它 属 性。
---- 1. 在 窗 体 中 加 入Toolbar 控 件

---- 双 击 工 具 箱 中 的Toolbar,Toolbar 就 自 动 加 入 窗 体 并 放 置 在 窗 体 客 户 区 的 顶 端。 如 果 要 把Toolbar 放 置 在 其 它 位 置, 可 以 在 属 性 窗 口 中 改 变Toolbar 的Align 属 性。Toolbar 的Align 属 性 中 可 供 选 择 的 有5 个 值:

---- 0 - vbAlignNone, 不 对 齐
---- 1 - vbAlignTop, 对 齐 窗 口 客 户 区 顶 端
---- 2 - vbAlignBottom, 对 齐 窗 口 客 户 区 底 端
---- 3 - vbAlignLeft, 对 齐 窗 口 客 户 区 左 边
---- 4 - vbAlignRight, 对 齐 窗 口 客 户 区 右 边

---- 2. 在Toolbar 中 加 入 按 钮

---- 用 鼠 标 右 键 单 击Toolbar, 会 弹 出Toolbar 的 属 性 菜 单。 单 击 菜 单 的 最 后 一 项“Properties”, 会 弹 出Toolbar 的 属 性 页(Property Pages) 窗 口。 在 属 性 页 窗 口 中 可 以 设 置 控 件 的 一 些 非 常 规 属 性。

---- 在Toolbar 属 性 页 中 选Buttons 组, 其 中 的“Insert Button” 和“Remove Button” 两 个 按 钮 分 别 用 于 在Toolbar 中 加 入 和 删 除 按 钮。Toolbar 控 件 的 所 有 按 钮 构 成 一 个 按 钮 集 合(Collection), 名 为Buttons。 在Toolbar 中 加 入 和 删 除 按 钮 实 际 上 是 对Toolbar 的Buttons 集 合 进 行 加 入 和 删 除 元 素 操 作。 对 于Toolbar 中 各 个 按 钮 的 访 问, 也 是 通 过Buttons 集 合 进 行 的。 用“Insert Button” 加 入 按 钮 后, 可 以 在Toolbar 属 性 页Buttons 中 设 置 新 加 入 的 按 钮 的 属 性。 这 些 属 性 包 括: 索 引(Index)、 标 题(Caption)、 描 述 信 息(Description)、 关 键 字(Key)、 初 态(Value)、 模 式(Style)、 宽 度(Width)、 提 示 信 息(ToolTipText) 等。

---- (1) Index 和Key
---- Toolbar 中 的 按 钮 是 通 过 集 合Buttons 来 访 问 的。 集 合 中 每 个 按 钮 都 有 唯 一 与 之 对 应 的 标 识,Index 和Key 就 是 与 按 钮 一 一 对 应 的 标 识。Index 是 整 数 类 型 的, 类 似 于 数 组 的 下 标。Key 是 字 符 串 类 型 的 类 似 于 对 象 的 名 字, 但 它 与 名 字 不 同 的 是 引 用 时 必 须 加 双 引 号, 并 且 它 中 间 可 以 包 含 任 意 的 字 符。 按 钮 的Key 属 性 是 可 选 的, 可 以 为 空。 访 问 按 钮 时 可 以 引 用Index 和Key 二 者 之 一。 例 如, 在 名 为Toolbar1 的Toolbar 中 加 入 按 钮, 其Index 为1,Key 设 置 为“1st button”。 在 程 序 中 可 以 通 过 以 下 两 种 方 式 之 一 访 问 该 按 钮:

Toolbar1.Buttons(1)

Toolbar1.Buttons("1st button")
---- (2) Caption
---- Caption 属 性 对 应 按 钮 上 显 示 的 文 本, 与 普 通 按 钮 的Caption 属 性 相 同。
---- (3) ToolTipText 和Description
---- ToolTipText 和Description 都 是 字 符 串 类 型, 用 于 设 置 按 钮 的 提 示 文 本 和 描 述 信 息。 设 置 了ToolTipText 后, 程 序 启 动 运 行 后, 当 用 户 把 鼠 标 指 针 移 到 按 钮 上 时,ToolTipText 对 应 的 文 本 字 符 串 自 动 浮 出。 该 属 性 用 于 在 程 序 运 行 时 提 示 用 户 按 钮 的 功 能。 程 序 启 动 运 行 后, 用 户 双 击 工 具 条 对 其 中 的 内 容 进 行 裁 剪 时, 对 话 窗 中 每 个 按 钮 旁 边 显 示 的 是 按 钮 的Description 属 性。

---- (4) Style
---- Style 属 性 设 置 按 钮 的 模 式, 不 同 模 式 的 按 钮 具 有 不 同 的 风 格 和 作 用。 可 供 选 择 的Style 属 性 有 以 下5 种:

---- 0 - tbrDefault, 一 般 按 钮
---- 1 - tbrCheck, 开 关 按 钮
---- 2 - tbrButtonGroup, 编 组 按 钮
---- 3 - tbrSeparator, 分 隔 按 钮
---- 4 - tbrPlaceholder, 占 位 按 钮

---- 一 般 按 钮 与 普 通 的 按 钮 控 件 在 操 作 风 格 上 基 本 相 同。 开 关 按 钮 具 有 二 值 状 态: 按 下 和 放 开。 编 组 按 钮 用 于 实 现 按 钮 之 间 的 分 组, 相 邻 的 编 组 按 钮 都 属 于 同 一 组。 编 组 按 钮 同 时 也 是 开 关 按 钮, 同 组 内 至 多 只 允 许 一 个 按 钮 处 于 按 下 状 态。 分 隔 按 钮 在Toolbar 中 并 不 显 示, 而 是 把 它 左 右 的 按 钮 分 隔 开 来。Toolbar 中 的 按 钮 本 来 是 紧 挨 着 排 列 的, 使 用 分 隔 按 钮 可 以 让 同 类 或 同 组 的 按 钮 并 列 排 放 而 与 邻 近 的 组 分 开。 占 位 按 钮 在Toolbar 中 也 不 显 示, 它 仅 仅 起 到 占 位 的 作 用。 在 占 位 按 钮 处 可 以 安 放 其 它 控 件 诸 如 组 合 框 之 类。 占 位 按 钮 是 唯 一 可 以 设 置 宽 度(Width) 属 性 的 按 钮。

---- (5) Value
---- Value 属 性 设 置 按 钮 的 按 下 和 放 开 状 态。 该 属 性 一 般 用 于 设 置 开 关 按 钮 和 编 组 按 钮 的 初 态。

---- (6) Width
---- 在 属 性 页 的Buttons 组 中 可 以 看 到,Width 属 性 后 有 一 个Placeholder 的 附 加 说 明。 只 有 当 按 钮 的Style 设 置 为Placeholder 时, 该 属 性 才 能 被 设 置, 其 它 情 况 下 该 属 性 被 禁 止。

---- 3. 为 按 钮 载 入 图 象

---- 工 具 条 按 钮 的 一 个 突 出 特 点 是 包 含 形 象 的 图 象, 用 以 提 示 按 钮 的 功 能。 在Toolbar 中 加 入 所 需 的 按 钮 后, 就 可 以 为 每 个 按 钮 载 入 图 象 了。Toolbar 按 钮 与 普 通 的Image 和PictureBox 不 同, 它 们 没 有Picture 属 性。 要 给Toolba

上一个:用VB 4.0制作软件封面
下一个:利用VB控制窗口显示风格

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,