Главная страница
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.017 c
3-35183
alextov
2002-07-23 10:41
2002.08.12
Как присвоить TField.NewValue значение null ?


14-35459
MAN-IN-RED
2002-07-15 20:12
2002.08.12
Нужна крутая библиотека по работе со звуком!


1-35334
Nikolai_S
2002-07-29 13:40
2002.08.12
Как поместить в DLL форму MDI Child?


3-35159
Ag2002
2002-07-22 12:40
2002.08.12
Excel


4-35496
bmai
2002-06-05 04:31
2002.08.12
Переключение раскладки клавиатуры в другом приложении.