Вниз
Скачать: 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.009 c
3-35142
Loco
2002-07-21 16:02
2002.08.12
SQL


14-35424
Desdechado
2002-07-16 17:29
2002.08.12
Виртуальный диск под Win


1-35346
Арсентьев
2002-07-30 12:36
2002.08.12
изменить цвет


4-35528
Zmey
2002-06-01 12:22
2002.08.12
Помогите!!! Надо сделать RxDbRichEdit по размеру текста


3-35155
awaken
2002-07-22 08:40
2002.08.12
MIDAS Server не запускается удаленно




   Наверх