Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.05;
Скачать: CL | DM;

Вниз

Перехват сообщения в наследнике.   Найти похожие ветки 

 
Max4   (2006-09-25 15:15) [0]

есть класс


 TMyClass = class(TCustomControl)
   ***
   protected
     procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
 end;
   ***



***
procedure TSpanGrid2.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
 inherited MouseDown(Button, Shift, X,Y);
 ***
end;
***


В Form1 создаю экземпляр TMyClass. Как мне в форме Form1 перехватить MouseDown класса TMyClass ?


 
clickmaker ©   (2006-09-25 15:17) [1]

inherited MouseDown(Button, Shift, X,Y);
if Assigned(FOnMouseDown) then
 FOnMouseDown(Self, Button, Shift, X, Y);

событие сгенерить, а в форме добавить обработчик


 
Max4   (2006-09-25 15:21) [2]

Мне что в моём классе TMyClass нужно создавать FOnMouseDown типа TMouseEvent со "всем вытекающим"?


 
clickmaker ©   (2006-09-25 15:23) [3]


> [2] Max4   (25.09.06 15:21)

а что там такого вытечет?
да и не надо ничего создавать, это уже унаследовано от TControl


 
Max4   (2006-09-25 15:25) [4]

плин, сорьки. перегрелся видимо. удалите этот пост наф.


 
Max4   (2006-09-25 15:29) [5]


 TMyClass = class(TCustomControl)
   private
     FOnMouseDown: TMouseEvent;
     procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
   public
     property OnMouseDown: TMouseEvent read FOnMouseDown write FOnMouseDown;

****
procedure TMyClass.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
 inherited MouseDown(Button, Shift, X,Y);
 if Assigned(FOnMouseDown) then
   FOnMouseDown(Self, Button, Shift, X, Y);
****



   fMyClass.OnMouseDown := MyClassMouseDown;



Страницы: 1 вся ветка

Текущий архив: 2006.11.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
9-1138288799
rts111
2006-01-26 18:19
2006.11.05
OpenGL. Как узнать координаты точки наблюдения(камеры)?


2-1160907447
Kolan
2006-10-15 14:17
2006.11.05
Правильно сложить 2 дин. массива


6-1150160343
anton773
2006-06-13 04:59
2006.11.05
большой размер файла


2-1161096034
hom
2006-10-17 18:40
2006.11.05
вопрос по Excel


15-1161079948
Empleado
2006-10-17 14:12
2006.11.05
Интересно, через какое время оно придет в каждый дом?