下载后可任意编辑Delphi 的消息机制浅探savetime2k@yahoo
com 2024
9我从去年 12 月上旬开始等待李维的《Inside VCL》
我当时的计划是,在这本书的指导下深化学习 Delphi
到了 12 月底,书还没有出来,我不愿再等,开始阅读 VCL 源代码
在读完 TObject、TPersistant 和 TComponent 的代码之后,我发现还是不清楚 Delphi 对象到底是怎样被创建的
于是我查看 Delphi 生成的汇编代码,终于理解了对象创建的整个过程(这里要特别感谢 book523 的帮助)
此后我就开始学习 Delphi VCL 的消息处理机制
自从我写下《Delphi 的对象机制浅探》,至今正好一个星期,我也基本上把 Delphi VCL 的消息处理框架读完了
我的学习方法就是阅读源代码,一开始比较艰苦,后来线索逐渐清楚起来
在此把自己对 Delphi VCL 消息机制的理解记录下来,便于今后的复习,也给初学 Delphi 或没有时间阅读 VCL 源代码的朋友参考(毕竟没有几个程序员像我这样有时间 :)
由于学习时间较短,一定会有错误,请大家指正
我在分析 VCL 消息机制的过程中,基本上只考查了三个类 TObject、TControl 和 TWinControl
虽然我没有阅读上层类(如 TForm)的代码,但我认为这些都是实现的细节
我信任 VCL 消息系统中最关键的东西都在这三个类中
纲举而目张,掌握基础类的消息处理方法之后再读其他类的消息处理过程就容易得多了
要想读懂本文,最低配置为: 了解 Win32 消息循环和窗口过程 基本了解 TObject、TControl 和 TWinControl 实现的内容 熟悉 Delphi 对象的重载与多态推举配置为: 熟悉 Win32 SDK 编程 熟悉 Delphi 的对象机