omo simular os eventos ONMOUSEENTER e ONMOUSELEAVE ?
Olá, galera!
Eu estou terminado um programa e gostaria de colocar alguns efeitos visuais nele.
E gostaria de saber se alguém sabe como simular, via programação, os eventos ONMOUSEENTER e ONMOUSELEAVE ?
Esse é aquele evento que ocorre quando se passa o mouse em um botão, painel e etc...
Esses eventos exitem em alguns botões que eu tenho, mas não estão nos botões que eu quero usar.
Alguém pode me ajudar?
Desde de já agradeço a todos!
Eu estou terminado um programa e gostaria de colocar alguns efeitos visuais nele.
E gostaria de saber se alguém sabe como simular, via programação, os eventos ONMOUSEENTER e ONMOUSELEAVE ?
Esse é aquele evento que ocorre quando se passa o mouse em um botão, painel e etc...
Esses eventos exitem em alguns botões que eu tenho, mas não estão nos botões que eu quero usar.
Alguém pode me ajudar?
Desde de já agradeço a todos!
Dark Knight
Curtidas 0
Melhor post
Barcelos
06/01/2004
Olá amigo,
Você terá que criar componentes que descendam dos que você quer usar e adicionar estas funcionalidades.
Segue um exemplo bem básico (somente muda a fonte) de um componente herdado de TSpeedButton que adiciona estas funcionalidades:
unit SpeedActive;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons;
type
TSpeedActive = class(TSpeedButton)
private
{ Private declarations }
protected
{ Protected declarations }
public
//Captura as mensagens cm_mouseenter
//e cm_mouseleave
procedure MouseEnter(var Msg : TMessage);
Message cm_mouseEnter;
Procedure MouseLeave (Var MSG: TMessage);
Message cm_mouseLeave;
{ Public declarations }
published
end;
procedure Register;
implementation
Procedure TActiveButton.MouseEnter (var MSG : TMessage);
begin
Font.Color := clBlue;
Font.Style := Font.Style + [fsBold];
end;
Procedure TActiveButton.MouseLeave (var MSG : TMessage);
begin
Font.Color := clBlack;
Font.Style := Font.Style - [fsBold];
end;
procedure Register;
begin
RegisterComponents(´Additional´, [TSpeedActive]);
end;
end.
Espero ter ajudado
Barcelos
osbarcelos@hotmail.com
Você terá que criar componentes que descendam dos que você quer usar e adicionar estas funcionalidades.
Segue um exemplo bem básico (somente muda a fonte) de um componente herdado de TSpeedButton que adiciona estas funcionalidades:
unit SpeedActive;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons;
type
TSpeedActive = class(TSpeedButton)
private
{ Private declarations }
protected
{ Protected declarations }
public
//Captura as mensagens cm_mouseenter
//e cm_mouseleave
procedure MouseEnter(var Msg : TMessage);
Message cm_mouseEnter;
Procedure MouseLeave (Var MSG: TMessage);
Message cm_mouseLeave;
{ Public declarations }
published
end;
procedure Register;
implementation
Procedure TActiveButton.MouseEnter (var MSG : TMessage);
begin
Font.Color := clBlue;
Font.Style := Font.Style + [fsBold];
end;
Procedure TActiveButton.MouseLeave (var MSG : TMessage);
begin
Font.Color := clBlack;
Font.Style := Font.Style - [fsBold];
end;
procedure Register;
begin
RegisterComponents(´Additional´, [TSpeedActive]);
end;
end.
Espero ter ajudado
Barcelos
osbarcelos@hotmail.com
GOSTEI 1
Mais Respostas
Alberto
06/01/2004
Teria como implementar também as MSG de onmousedown e onmouseup nesse exemplo?
GOSTEI 0