说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB用API函数改进ListView 控件的显示效果

HTML文档下载 WORD文档下载 PDF文档下载
VB用API函数改进ListView 控件的显示效果



一 、ListView 使 用 简 介
---- ListView 控 件 是VB 开 发 者 非 常 喜 爱 的 控 件 之 一。 作 为
Windows95 公 共 控 件 组(COMCTL32.OCX) 的 成 员, 它 经 常 与 经 常 与
TreeView、ImageList 等 控 件 联 合 使 用。 即 用 TreeView 显 示 一 个 的
树 型 结 构, 而 用 ListView 显 示 选 中 的 节 点(Node) 对 象 的 记 录
集。

---- 这 是 笔 者 在 开 发 财 务 软 件 项 目 中 的<< 凭 证 管 理>> 模 块
的 一 个 用 户 界 面。 屏 幕 左 边 是 一 个TreeView 控 件, 用 来 显 示
会 计 凭 证 的 类 别; 右 边 是 一 个ListView, 用 来 显 示 对 应 类 别
的 凭 证 目 录; 上 方 是 一 个 菜 单 条 控 件(MenuBar) 和 一 个 工 具
条 控 件(ToolBar); 下 方 是 一 个 状 态 栏 控 件(StatusBar), 用 来 显
示 凭 证 数 个 当 前 日 期。

---- 大 家 可 以 看 到 图 中 所 示 的 界 面 非 常 类 似 于Window95/98 的
资 源 浏 览 器, Windows 的 界 面 风 格 做 为 一 种 标 准 已 为 广 大 用
户 所 接 受。 而Windows 操 作 系 统 的 主 要 的 优 点 就 是 为 所 有 的
应 用 程 序 提 供 了 公 用 的 界 面。 知 道 如 何 使 用 基 于Windows 的
应 用 程 序 的 用 户, 很 容 易 学 会 使 用 其 他 应 用 程 序。

---- 这 种 使 用Windows95 公 共 控 件 组 合 的 方 法 能 够 达 到 与
Windows 界 面 的 一 致 性, 所 以 在 目 前VB5.0 应 用 程 序 的 开 发 中
经 常 使 用。

二、 填 充 大 量 结 果 集 所 遇 到 的 问 题
---- 在 实 际 应 用 开 发 中, 经 常 用ListView 填 充 一 个 数 据 库 结
果 集(Recordset) 的 内 容。 即 先 写 一 段SQL 查 询 语 句, 产 生 一 个
结 果 集, 然 后 将 结 果 集 的 每 一 条 记 录 用DO...LOOP 循 环 语 句
中 填 到ListView 中。

---- 但 是 当 结 果 集 很 大 时( 例 如 有5000 条 以 上 的 记 录) , 填
充 所 需 要 的 时 间 会 很 长。 用 户 不 得 不 等 很 长 时 间 完 成 一
个 查 询。 所 以 在 查 询 的 过 程 中 必 须 允 许 用 户 按Escape 键 退
出。 具 体 做 法 是 在DO...LOOP 循 环 体 中 加 一 条DoEvents 函 数, 并
写 一 段 中 断 退 出 程 序 代 码。

---- DoEvents 函 数 的 功 能 是: 转 让 控 制 权, 以 便 让 操 作 系 统
处 理 其 它 的 事 件。 这 样 在 长 时 间 的 查 询 过 程 中, 如 果 用 户
按 了Escape 键, 将 退 出 循 环 体, 结 束 查 询 过 程。

---- 但 是 这 样 又 会 引 发 另 外 一 个 问 题: 由 于DoEvents 可 以 让
操 作 系 统 响 应 别 的 事 件, 循 环 体 中 填 充 每 一 条ListView 项
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘