性 是opened_files_list;
更 改 菜 单 项opened_files_list 的 可 见 属 性 , 使 opened_files_list.Visible=False
更 改 菜 单 项opened_files_list 的 下 标 属 性 , 使
opened_files_files_list.Index=0
在 程 序 中 控 制 菜 单 项opened_files_list 的 动 态 装 入 。
假 设 要 显 示 打 开 过 的 第 二 文 件 的 文 件 名 , 并 且 该 文 件 名 存 放 在 一 个 文 件 名 数 组opened_file_ name 里 。 以 下 的 代 码 就 实 现 了 这 一 功 能:
Load opened_files_list(1)
opened_files_lise(1).Caption="&2"+opened_file_name(1)
opened_files_list(1).Visible=True
需 要 注 意 的 是 , 对 于 下 标 为0 的 菜 单 项 , 不 能 用Load 方 法 。 因 为 在 程 序 执 行 时 , 该 菜 单 项 就 已 经 被 装 入 到 内 存 里 了; 另 外 , 在 菜 单 项 的 标 题 属 性 字 符 里 的“&” 字 符 具 有 特 殊 的 含 义 , 它 的 作 用 是 在 显 示 该 属 性 字 符 串 的 同 时 , 并 不 显 示“&” 本 身 , 而 紧 跟“&” 的 字 符 在 显 示 时 具 有 下 划 线 , 并 且 该 字 符 成 为 热 键 。
如 果 下 标 不 为0 的 菜 单 项 不 再 需 要 , 为 了 减 少 对 内 存 资 源 的 占 用 , 可 以 用Unload 方 法 把 它 从 内 存 卸 出; 同 样 地 , 不 能 用Unload 卸 出 下 标 为0 的 菜 单 项 。
弹 出 式 菜 单 的 实 现(PopupMenu Method)
VB 中 在 菜 单 设 计 窗 口(Menu Design Window) 中 设 计 的 菜 单 是 下 拉 式 菜 单 。 下 拉 式 菜 单 是 用 户 在 任 何 时 候 都 可 以 在 顶 端 菜 单 条 上 选 择 后 拉 出 的 菜 单 , 而 弹 出 式 菜 单 则 是 在 程 序 界 面 的 一 定 区 域 内 点 按 鼠 标 键 后 出 现 的 菜 单 。 在 某 些 情 况 下 , 弹 出 式 菜 单 会 使 系 统 功 能 的 实 现 更 加 简 洁 和 高 效 , 使 用 起 来 更 加 得 心 应 手 。
Widnows 程 序 的 弹 出 式 菜 单 一 般 是 当 用 户 在 程 序 的 桌 面 上 点 按 鼠 标 键 时 出 现 的 。 弹 出 式 菜 单 多 用 于 实 现 系 统 的 附 加 或 增 强 功 能 。 弹 出 式 菜 单 的 内 容 , 可 以 随 点 按 鼠 标 键 的 位 置 不 同 而 变 化 。 由 于 弹 出 的 菜 单 要 覆 盖 屏 幕 的 一 部 分 , 所 以 应 尽 量 缩 短 菜 单 里 的 文 字 。
在VB 中 , 弹 出 式 菜 单 的 实 现 要 用 到 下 拉 式 菜 单 设 计 的 技 术 和PopupMenu 方 法 。 具 体 的 做 法 是:
在 菜 单 设 计 窗 口(Menu Design Window) 里 设 计 好 相 应 窗 体 的 弹 出 式 菜 单 。 要 注 意 的 是 , 要 弹 出 的 菜 单 必 须 至 少 有 一 个 子 菜 单; 因 而 这 个 菜 单 不 能 有 快 捷 键 , 并 且Checked 属 性 必 须 是False 。 再 把 弹 出 式 菜 单 的Visible 属 性 改 为False 。
在 具 有 设 计 好 的 弹 出 式 菜 单 的 窗 体 的Form_Click 中 加 入 以 下 代 码( 假 设 弹 出 式 菜 单 的Name 属 性 是mnuExample):
Sub Form_Click()
PopupMenu mnuExample
End Sub
如 果 要 求 只 有 按 下 鼠 标 左 键 或 者 右 键 才 能 激 活 菜 单 , 就 必 须 在Form_MouseDown 里 加 入 如 下 代 码:
Sub Form_MouseDown(Button As Integer,Shift As Integer,x As Single,y As Single)
If Button=2 then Button=2 表 示 鼠 标 右 键
PopupMenu mnuExample&nb