|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Перекрыть событие в наследнике
Всем добрейший!
Есть компонент - JvThumbView. У него не работает прокрутка мышью. Пытаюсь написать компонент-наследник и перекрыть события MouseWheelDown и MouseWheelUp, но это не срабатывает. Вот что я написал, но чувствую что не правильно т.к. делаю это в первый раз: Код:
unit MyThumbView; interface uses {$IFDEF UNITVERSIONING} JclUnitVersioning, {$ENDIF UNITVERSIONING} Windows, // TWin32FindData {$IFDEF HAS_UNIT_LIBC} Libc, // stat() {$ENDIF HAS_UNIT_LIBC} SysUtils, Messages, Classes, Graphics, Controls, Forms, ExtCtrls, JclBase, JvExForms, JvExExtCtrls, JvBaseThumbnail, JvThumbViews; type TMyThumbView = class(TJvThumbView) private { Private declarations } FOnMouseWheelDown: TMouseWheelUpDownEvent; FOnMouseWheelUp: TMouseWheelUpDownEvent; protected { Protected declarations } public { Public declarations } published { Published declarations } constructor Create(AOwner: Tcomponent);override; property OnMouseWheelDown: TMouseWheelUpDownEvent read FOnMouseWheelDown write FOnMouseWheelDown; property OnMouseWheelUp: TMouseWheelUpDownEvent read FOnMouseWheelUp write FOnMouseWheelUp; function DoMouseWheelDown(Shift: TShiftState; MousePos: TPoint): Boolean; override; function DoMouseWheelUp(Shift: TShiftState; MousePos: TPoint): Boolean; override; end; procedure Register; implementation procedure Register; begin RegisterComponents('My Component', [TMyThumbView]); end; constructor TMyThumbView.Create(AOwner: Tcomponent); begin inherited create(AOwner); end; function TMyThumbView.DoMouseWheelDown(Shift: TShiftState; MousePos: TPoint): Boolean; begin Result := False; if Assigned(FOnMouseWheelDown) then FOnMouseWheelDown(Self, Shift, MousePos, Result); end; function TMyThumbView.DoMouseWheelUp(Shift: TShiftState; MousePos: TPoint): Boolean; begin Result := False; if Assigned(FOnMouseWheelUp) then FOnMouseWheelUp(Self, Shift, MousePos, Result); end; end. |