读书人

怎样增加一个OnColorChange的属性?该

发布时间: 2012-02-15 12:09:44 作者: rapoo

怎样增加一个OnColorChange的属性?
想写一个TMyPanel,继承自TPanel,增加一个属性OnColorChange便于用户在mypanel颜色改变的时候自定义事件,该怎么定义这个属性呢?VCl的源码没有看明白,哪位大师指点以下,或是推荐本书学习一下,谢谢。

[解决办法]
没测试,也许有错误

TMyPanel = class(TPanel)
private
FOnColorChange: TNotifyEvent;
procedure CMColorChanged(var Message: TMessage); message CM_COLORCHANGED;
published
property OnColorChange: TNotifyEvent read FOnColorChange write FOnColorChange;
end;


procedure TMyPanle.CMColorChanged(var Message: TMessage);
begin
if Assigned(FOnColorChange) then
FOnColorChange(Self);
inherited;
end;

读书人网 >.NET

热点推荐