Показать сообщение отдельно
  #1  
Старый 10.08.2012, 06:52
Аватар для Lost_Fish
Lost_Fish Lost_Fish вне форума
Начинающий
 
Регистрация: 21.07.2011
Адрес: Новосибирск
Сообщения: 103
Версия Delphi: Delphi 7,XE2
Репутация: выкл
По умолчанию Помогите, проблема с переопределением события

Есть

Код:
TDBLookupComboboxHide = class(TDBLookupComboboxEh)
    private
    { Private declarations }
        ...
        FOnDropDown:TNotifyEvent;
        FOnCloseUp:TCloseUpNotify;
        procedure MyDropDown(Sender: TObject);
        procedure MyCloseUp(Sender: TObject; Accept: Boolean);
        procedure btnClearClick(Sender: TObject;var Handled: Boolean);
    protected
    { Protected declarations }
    public
    { Public declarations }
        constructor Create(AOwner:TComponent);Override;
    published
    { Published declarations }
        ...
    end;
....

procedure TDBLookupComboboxHide.btnClearClick(Sender: TObject;var Handled: Boolean);
begin <--Сюда даже не заходит
    if Assigned(TDBLookupComboboxEh(TEditButtonControlEh(Sender).Parent)) then
        TDBLookupComboboxEh(TEditButtonControlEh(Sender).Parent).KeyValue:=Null;
end;

constructor TDBLookupComboboxHide.Create(AOwner:TComponent);
begin
    inherited;
    ...
    FOnCloseUp:=Self.OnCloseUp;
    FOnDropDown:=Self.OnDropDown;
    Self.OnCloseUp:=MyCloseUp;
    Self.OnDropDown:=MyDropDown;
    With EditButtons.Add do
    begin
        Style:=ebsGlyphEh;
        Glyph.LoadFromResourceName(HInstance,'cmbCloseHide');
        OnClick:=btnClearClick;  <---Вот тут присвоение остановка по BreakPoint есть
    end;
end;

Это всё в пакете, компонент регистрируется нормально, события OnCloseUp и OnDropDown переопределяются нормально, а вот при создании дополнительной кнопки событие на ней не переопределяется, в btnClearClick по BreakPoint даже не переходит.

Помогите понять в чём дело пожалуйста.
Ответить с цитированием