CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

简单问题,向各位专家请教!在线等

楼主hackking()2005-03-10 22:34:17 在 Delphi / VCL组件开发及应用 提问

小弟刚接触delphi不久,现想编制组件,但看了书上的一段示例代码后,有些地方不太明白,请各位赐教!谢谢!  
  ……  
  type  
      TTimeEvent   =   procedure   (times:integer)   of   object;  
      TMyTimer   =   class(TComponent)  
      private  
            FTimer:TTimer;  
            FOnTimer:TTimeEvent;  
            FTimes:integer;  
            procedure   FOnTime(Sender:Tobject);  
      protected  
      public  
          constructor   create(AOwner:TComponent);override;  
          destructor     destroy;override;  
          procedure   start;  
      published  
          property     OnSecond   :TTimeEvent   read   FOnTimer   write   FOnTimer;  
      end;  
      constructor   TMyTimer.create(AOwner:TComponent);  
      begin  
          inherited;  
          if   not   (csdesigining   in   ComponentState)   then  
          begin    
                FTimer   :=   TTimer.create(nil);  
                Ftime.interval   :=   1000;  
                Ftimer.OnTimer:=   FOnTimer;  
        end;  
      end;  
   
  destructor   TMytimer.destroy;  
  begin  
      FTimer.free;  
      inherited;  
  end;  
   
  procedure   TMytimer.FOnTimer(Sender:Tobject);  
  begin  
      inc(FTimers);  
      if   assigned(OnSecond)   then  
          OnSecond(FTimes);  
  end;  
   
  procedure   TMytimer.Start;  
  being  
      FTimes:=0;  
      FTimer.enable   :=   true;  
  end;  
  我的问题是在delphi中是怎样把自定义事件关联起来的?可能我的理解有误,上述代码中FOnTime(Sender:Tobject)定义的是什么?应该怎样理解TTimerEvent?为什么会有OnSecond(FTimes);这名代码出现?应怎样理解?对不起,小弟刚学delphi,不太熟悉,但有个活特急,分不多,见谅!! 问题点数:20、回复次数:4Top

1 楼hackking()回复于 2005-03-11 09:04:48 得分 0

怎么没人回帖呀?我自己顶!Top

2 楼caiso(十年磨一剑)回复于 2005-03-11 09:30:47 得分 0

顶一下Top

3 楼hackking()回复于 2005-03-15 12:21:30 得分 0

为什么没有人回答?是嫌分太少了,还是不屑于回答Top

4 楼whbo(王红波(年轻人,要有所作为))回复于 2005-03-16 09:53:53 得分 20

FOnTime(Sender:Tobject)定义的是什么//  
  就是一个private   类的过程  
  TTimeEvent   =   procedure   (times:integer)   of   object;  
  //可以理解成一个过程对象的  
  published(公开)  
          property     OnSecond   :TTimeEvent   read   FOnTimer   write   FOnTimer;  
  这是一个公开属性的定义,一个组件自然该有属性,属性有公开和私有的分别,公开的,当该单元被调用,就可以访问,至于它的可读,可写,你看后面,就知道的,私有的只有在过程内有用的,也就是指他的作用范围Top

相关问题

  • 各位专家问一个特别简单的问题,请帮帮我。谢谢
  • 简单问题,请教专家,急,在线等待。。。。。
  • 一个简单的异常问题,还请各位专家指点一下,谢谢!
  • 简单的问题,麻烦各位了,谢谢各位,在线等待
  • 各位大虾:谁有简单但完整的线程例子
  • ◇简单问题,小妹在线等各位大哥帮助~~
  • 一个简单问题, 请教各位, 在线等待
  • 非常简单,请教各位高手 在线等
  • 问高手一简单问题,在线等~~~~~~~~~~~多谢各位
  • 简单线程问题求助各位大侠!

关键词

  • 属性
  • 代码
  • fontimer
  • onsecond
  • tmytimer
  • ftimer
  • ttimeevent
  • ftimes
  • tcomponent
  • 定义

得分解答快速导航

  • 帖主:hackking
  • whbo

相关链接

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

广告也精彩

反馈

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