-
Здравствуйте! Необходимо написать программу: "Написать для Delphi компонент, который при наведении на него курсора будет менять шрифт"
Создаю компонент, предком делаю TLabel. Но немогу прописать процедуру замены шрифта на событие OnMouseEnter. Если несложно, привидите небольшой пример такой процедуры.
Заранее спасибо.
-
Не надо прописывать никаких событий, надо обработать сообщения CM_MOUSEENTER и CM_MOUSELEAVE. Примеры см. в VCL.
-
TMyLabel = class(TLabel)
private
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
end;
implementation
procedure TMyLabel.CMMouseEnter(var Message: TMessage);
begin
Font.Color := clred;
end;
procedure TMyLabel.CMMouseLeave(var Message: TMessage);
begin
Font.Color := clBlack
end;
-
> procedure TMyLabel.CMMouseEnter(var Message: TMessage); > begin > Font.Color := clred; > end; > > procedure TMyLabel.CMMouseLeave(var Message: TMessage); > begin > Font.Color := clBlack > end;
Цвет это еше не весь шрифт. Я думаю нужно вводить дополнительное свойство OverFont.
-
> Dyakon_Frost © (18.06.07 06:41) > Если несложно, привидите небольшой пример такой процедуры.
-
Большое спасибо разобрался! Дальше все просто. Я сам то создавал процедуру как OnMouseEnter, а нада было CM. =)
-
Удалено модератором
|