Вниз
Скачать: CL | DM;

Компонент   Найти похожие ветки 

 
Igor_thief ©   (2002-07-16 12:18) [0]

Я делаю компонент, наследник TLabel. Переопределил событие OnMouseMove. Но у меня появилась проблемка. Никак не могу переопределить событие OnMouseLeave. Может кто стыкался с такой проблемой? Если да, то расскажите как ее решить.


 
Сатир   (2002-07-16 18:36) [1]

может, просто, не там переопределяешь?


 
Юрий Зотов ©   (2002-07-16 19:31) [2]

Таких событий нет, их надо вводить, а не переопределять (нельзя переопределить еще неопределенное). А вводятся они так:

type
TMyLabel = class(TLabel)
private
FOnMouseEnter: TNotifyEvent
FOnMouseLeave: TNotifyEvent;
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
protected
procedure MouseEnter; dynamic;
procedure MouseLeave; dynamic;
published
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
end;

procedure TMyLabel.CMMouseEnter(var Message: TMessage);
begin
inherited;
MouseEnter
end;

procedure TMyLabel.CMMouseLeave(var Message: TMessage);
begin
inherited;
MouseLeave
end;

procedure TMyLabel.MouseEnter;
begin
if Assigned(FOnMouseEnter) then FOnMouseEnter(Self)
end;

procedure TMyLabel.MouseLeave;
begin
if Assigned(FOnMouseLeave) then FOnMouseLeave(Self)
end;


 
Igor_thief ©   (2002-07-17 12:56) [3]

>Юрий Зотов
Спасибо!
А почему OnMouseMove есть, а OnMouseLeave нет?


 
Eugene Lachinov ©   (2002-07-17 13:10) [4]

В Delphi 6 есть


 
Igor_thief ©   (2002-07-17 13:19) [5]

Eugene Lachinov © (17.07.02 13:10)
Я имею ввиду, что OnMouseMove можно переопределить, а OnMouseLeave ytkmpz.


 
Eugene Lachinov ©   (2002-07-17 13:42) [6]

Если переопределение это написание своей обработки события OnMouseLeave, то в Delphi 6 событие OnMouseLeave там же где и
OnMouseMove


 
Igor_thief ©   (2002-07-17 13:47) [7]

Eugene Lachinov © (17.07.02 13:42)
Я в своем компоненте (наследник TLabel) переопределил OnMouseMove. Пытался переопределить таким же способом OnMouseLeave, но компилятор выдает ошибку.


 
Cobalt ©   (2002-07-18 22:22) [8]

Какую ошибку? (Извините, тут телепатов нет ;(


 
Юрий Зотов ©   (2002-07-19 01:15) [9]

> А почему OnMouseMove есть, а OnMouseLeave нет?

Это вопрос не ко мне, а к Borland"у. Я сам сильно удивляюсь, почему они это не ввели - класс TControl на такое событие ну просто сам напрашивется. Как и на OnMouseEnter.

Может, просто забыли?



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.014 c
1-35269
V.Turecky
2002-07-31 12:53
2002.08.12
Информация о памяти.


14-35409
Malder
2002-07-10 01:15
2002.08.12
Локальная сеть


14-35446
sakses
2002-07-18 10:49
2002.08.12
PDF--> Doc


3-35186
kaif
2002-07-23 11:54
2002.08.12
Как настроить среду?


1-35360
Demon[DZ]
2002-07-30 14:55
2002.08.12
Помогите!




   Наверх