词条 | 子类处理 |
释义 | 子类处理简介:子类处理,熟悉API函数的VB爱好者们一定不会感到陌生,它又称为“子类化”或“子类派生”,是一种功能强大的技术。在应用它之前,我们需要先对之原理进行简单的了解:在WINDOWS中,每一个窗口都有一个默认的窗口函数,它的作用是对发送到窗口的消息进行处理。 子类处理应用:在VB中,这个默认的窗口函数不是直接公开的,它提供了对VB中的事件进行处理的代码,当接受到一条WINDOWS消息时,这个窗口函数就会响应并产生一个VB事件,换言之,这个窗口函数隐藏了消息处理的细节,用一个VB事件来响应一条WINDOWS消息。然而,VB没有提供对所有WINDOWS消息的支持,许多WINDOWS消息都不会生成一个VB事件,但这不能说是VB的缺点,恰是VB的优点,放弃对那些程序员并不常用的消息的支持,在功能强大和性能稳定之间做了很好的平衡。而且,幸运的是,尽管这个幕后主宰是默认的,但它不是唯一的,我们完全可以用自己定制的一个窗口函数替代它,并保留指向默认窗口函数的指针,当一个消息到达窗口时,自制的窗口函数会拦截它并进行识别处理,对不能识别或不需进行特别处理的消息,就通过指向默认窗口函数的指针传递给默认的窗口函数进行处理,这样便扩充了默认窗口函数的功能。这种用定制的窗口函数代替默认的窗口函数,拦截并处理到达窗口的消息的技术,我们就称之为“子类处理”,定制的函数我们称之为“回调函数”。子类处理的方法主要有三种:忽略消息并传递给默认的窗口函数;截获消息,执行特定操作后,传递给默认的窗口函数或传递给默认的窗口函数处理后,对返回值进行控制;截获消息,执行特定操作并禁止默认的窗口函数对之进行处理。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。