随笔分类 - Delphi-Event1
摘要:首先学习: 指向非对象(一般的)函数/过程的函数指针 Pascal 中的过程类型与C语言中的函数指针相似,为了统一说法,以下称函数指针。函数指针的声明只需要参数列表;如果是函数,再加个返回值。例如声明一个过程类型,该类型带一个通过引用传递的整型参数: type IntProc = procedure
阅读全文
摘要:先勾画一下思路:1、建立一个类, 里面有年龄字段 FAge;2、通过 Age 属性读写 FAge;3、如果输入的年龄刚好是 100 岁, 将会激发一个事件, 这个事件我们给它命名为: OnHundredunit Unit1;interfaceuses Windows, Messages, SysU...
阅读全文
摘要:我把Delphi常用的几个类的事件都收集齐了,并一一加以注释。原因是在自定义的过程中,看到那堆长长的事件列表感到头晕,但是如果不发布这些事件的话,更是暴殄天物。所以关键还是要对这些事件非常熟悉,才能不头晕,才能如臂使指! 接下来,还有TForm和TPanel。不要小看了TPanel,其实它也是一个小
阅读全文
摘要:Shift 是一个集合变量。type TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);也就是说TShiftstate类型有ssShift, ssAlt, ssCtrl, ssLeft
阅读全文
摘要:忽然发现TProcedure和TNotifEvent的区别还挺大的: 模拟点击按钮后发生的动作: 其实各种TNotifyEvent,实际上就是TMethod,可随时做强制转换,然后测试TMethod: TWndMethod是MakeObjectInstance所用的参数,该函数也是采用了前面类似的方
阅读全文
摘要:http://bbs.2ccc.com/topic.asp?topicid=496893
阅读全文
摘要:一个灵巧的Delphi多播实现方案.必须是支持泛型的Delphi版本.也就是Delphi2009以后.强烈建议用DelphiXE. 用法就是例如写一个Class指定一个Event,触发的时候会通知多个Method.和.NET的多播事件机制是一样的. 用法例如:type TFakeButton = ...
阅读全文
摘要:其实要了解这些东西,适当的学些反汇编,WINDOWS内存管理机制,PE结构,看下李维的VCL架构剖析可以很好理解type TMyEvent = procedure of object;这是一种数据类型的定义,他定义了一个可以在类中使用的函数类型区别于type TMyProc = procedure;
阅读全文
摘要:Delphi 7事件的多处理机制Allen Tao2007-08-19 首先解释一下这个题目。在我使用Delphi 7的过程中发现,一个对象的事件只能被一个过程处理。如果多次给这个对象的事件赋给处理事件的过程,最后真正处理事件的将是最后赋值的那个过程。例如,有类TMyClass中定义了一个事件On...
阅读全文
摘要:Delphi动态事件深入分析 2009-2-7 作者:不得闲核心提示:本实验证明了在类中方法的调用时候,所有的方法都隐含了一个Self参数,并且该参数作为对象方法的第一个参数传递... 首先做一个空窗体,放入一Button。在implementation下面声明两个方法如下: 运行之后点一下‘调用F
阅读全文
摘要:最近学QT,对信号槽机制感到有点新鲜:QObject::connect(slider, SIGNAL(valueChanged(int)), lcd, SLOT(display(int)));自己总结其原理,就是一句话:把两个对象的函数相关(往往是设置同一个值),而不用考虑两个对象之间的关系,而且可...
阅读全文