CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

VCL架构问题,inherited 变的是什么法术。

楼主verlongan(verlongan)2005-06-03 12:54:39 在 Delphi / VCL组件开发及应用 提问

添加一个按键事件,调试到此方法中  
  procedure   TControl.WMLButtonDown(var   Message:   TWMLButtonDown);  
  begin  
      SendCancelMode(Self);      
      inherited;     //为什么会调用   TWinControl.DefaultHandler(var   Message)  
      if   csCaptureMouse   in   ControlStyle   then   MouseCapture   :=   True;    
      if   csClickEvents   in   ControlStyle   then   Include(FControlState,   csClicked);  
      DoMouseDown(Message,   mbLeft,   []);  
  end; 问题点数:20、回复次数:4Top

1 楼yuanscar(塑料树)回复于 2005-06-03 13:29:19 得分 8

当然了,每个类都有自己的函数框架表,执行inherited的时候,就到祖先的框架表中寻找继承的函数。  
  TWinControl就封装了对windows的各种消息的处理,这是一个对消息队列循环处理,当然要调用DefaultHandler(var   Message),采用默认的方法来处理没有定义的消息了。  
  建议看李维的inside   vclTop

2 楼g961681(技术庸人(情商太低))回复于 2005-06-03 14:14:36 得分 0

不解~Top

3 楼heluqing(鉴之小河〖劳累求充实〗)(vcl .net)回复于 2005-06-03 14:39:59 得分 7

inherited先到父类里面去找同名的,找不到的话就调用默认的,处理消息的话,当然就是DefaultHandlerTop

4 楼comanche(太可怕)回复于 2005-06-03 15:12:31 得分 5

这个没什么特别啊,   相当一个   c++   宏吧  
   
  c++   也可以这样写  
   
  class   base  
  {  
  ...  
  }  
   
  class   derive   :public   base  
  {  
      typedef   base   inherited  
  }  
   
  使用到时   inherited.base_function_nameTop

相关问题

  • Inside VCL(深入核心——VCL架构剖析)(李维)
  • 50分求《Inside VCL(深入核心——VCL架构剖析)》电子版
  • .NET有没有像Delphi一样有《VCL架构部析》之类的书?
  • 三层架构?
  • 系统架构......(-_-)
  • 三层架构
  • 局域网架构
  • B/S架构系统
  • Exception处理架构
  • .NET架构问题

关键词

  • c++
  • 消息
  • inherited
  • 调用
  • defaulthandler
  • 处理
  • var message

得分解答快速导航

  • 帖主:verlongan
  • yuanscar
  • heluqing
  • comanche

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo