Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как лучше сделать ? [D5, WinXP]


SemFLY ©   (2002-08-09 14:55:00) 

Задача такая...
У меня есть Label и мне надо в то время, когда курсор мыши находится на нём, чтобы Label светился белым, а когда не на нём светился серым. Прописать изменение цвета в событие OnMouseMove конечно можно, но тогда на прилегающих объектах к Label мне надо прописывать изменение цвета на серый.
Вопрос: Есть ли какой-нибудь другой способ решения этой задачи ?
Кроме события OnMouseMove.

Спасибо !
- - - - - - - - - - - - -
P.S. Если не трудно, то можно пример.


Opuhshii   (2002-08-09 15:26:00) [1]

это VCLные мессаджи,..
CM_BASE = $B000;
CM_MOUSEENTER = CM_BASE + 19;
CM_MOUSELEAVE = CM_BASE + 20;


Skier   (2002-08-09 15:20:00) [2]

>SemFLY
Всё так. см. Controls.pas
В частности :


procedure TControl.CMMouseEnter(var Message: TMessage);
begin
if FParent <> nil then
FParent.Perform(CM_MOUSEENTER, 0, Longint(Self));
end;

procedure TControl.CMMouseLeave(var Message: TMessage);
begin
if FParent <> nil then
FParent.Perform(CM_MOUSELEAVE, 0, Longint(Self));
end;


SemFLY   (2002-08-09 15:16:00) [3]

Skier, Я так понимаю, что это API-шные функции, глянул в Help"e Windows SDK (в делфийском Help"е тоже смотрел, а вдруг... ;)), там таких нет, поробовал изменить написание, тоже не нашел. Может они не так называются ?


Skier   (2002-08-09 14:57:00) [4]

>SemFLY


> Есть ли какой-нибудь другой способ решения этой задачи ?
>


Сообщения CM_MOUSELEAVE и CM_MOUSEENTER


Наверх

Титульная страница Поиск, карта сайта Написать письмо