VB 高级编程初探
一、前言
很早以前就想写一篇关于子类技术( SubClass)的文章,不过由于时间
有限没有深入研究。这段时间由于工作需要用子类实现了大量的
Windows 消 息 捕 获, 正 好 今 天 有人 问 到 鼠 标 滚动 事 件 的 捕 获问 题
(这个问题我将在文末给出一个较简洁的方法),因此决定写这
篇文章,希望对大家有些帮助。
我们都知道 VB 有其局限性,我们也常常在试探通过某种方法拓展其应
用 范 围 , 正 如 我 在 以 前 讲 到 过 的 如 何 在 VB 中 使 用 隐 藏 的 指 针 操
作函数,如何突破限制使用 TOM 对象等等。今天讲到的子类技术
正是突破 VB 局限的又一有力工具。
二、子类(SubClass)技术简介
众所周知, Windows 是一个基于消息的系统,消息在 Windows 的对象之
间进行着传递。子类(SubClass)和 Windows 的钩子(Hook)机制
存在于消息系统之中,我们可以利用这些机制来操纵、修改甚至丢
弃那些在操作系统或是进程中传递的消息,以求改变系统的一些
行为。