Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.12;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.014 c
1-35374
Spooky
2002-07-25 09:04
2002.08.12
Доступ к реестру


1-35357
prorok2
2002-07-30 14:24
2002.08.12
Кодировка в Database Desktop


3-35137
Kombat
2002-07-21 14:49
2002.08.12
IB и монопольный доступ


3-35177
Larisa Perova
2002-07-21 20:13
2002.08.12
FireBird


1-35337
Holodilnik
2002-07-30 12:09
2002.08.12
сортировка в TreeView