Array
(
)

Eventos ao passar com o mouse sobre o Botão e ao sair

Lhcsilva
   - 31 ago 2004

Olá galera,

minha dúvida é super simples, porém não sei que evento usar, nem onde usar.

Minha dúvida é a seguinte: tenho no meu form um ocx do flash, onde aparece normal o primeiro frame, e por dar um comando stop no flash neste frame, fica parado neste quadro. Até aí tudo bem.

Em cima do ocx que aparece o flash, coloquei um bitbn, o que eu gostaria é o seguinte: que quando passasse o mouse em cima do bitbn1, no ocx do flash fosse para o frame 2, e quando o mouse não estivesse em cima do bitbn1 voltasse para o frame 1.

Fiz o seguinte código para a mudança para o frame 2, quando passo com o mouse sobre o botão

procedure bitbn1.mousemove

shockwaveflash1.gotoframe(2)

Porém como posso fazer para voltar ao frame 1 quando o mouse não estiver sobre o botão?

Em que evento deverei colocar o código?

Por favor, me ajudem

Valeu


Macario
   - 31 ago 2004

Tipo se não voce nao for obrigado a usar um TBitBtn use um TLabel

ai usa os eventos OnMouseEnter e OnMouseLeave.

Qualquer duvida tamo por aqui.



P.s: que bom que voce leu as regras. :idea: 8) .


Fórum Vini
   - 31 ago 2004

Olá,
existe outra forma, mais complicada, mas que funciona..
crie um componente descendente de TBitBtn e capture as mensagens CM_MouseEnter e CM_MouseLeave(os nomes são esses se não me engano).. de lá você chama os eventos..:
#Código

TMeuBitBtn = class(TBitBtn)
private
procedure MouseEnter(var Msg: TMessage); message CM_MouseEnter;
procedure MouseLeave(var Msg: TMessage); message CM_MouseLeave;
published
property OnMouseEnter: TNotifyEvent ...;
property OnMouseLeave: TNotifyEvent ...;
end;
...
procedure TMeuBitBtn.MouseEnter(var Msg: TMessage);
begin
If Assigned(fOnMouseEnter) then
FOnMouseEnter(Self);
end;
(faça o mesmo para o onMouseLeave)
..

Estou sem Delphi aqui, então não pude testar esse código, mas a idéia é essa.. se vc se interessar, mais tarde, quando estiver em casa, eu posto o código completo..

Espero ter ajudado,
Vinicius;


Lhcsilva
   - 01 set 2004

Olá Macario e .Vini.

Adica que vc me passou Macario deu certo, o único problema é que usando o label não tem aquele efeito de botão, mas isto é de menos.

Valeu brigadão. Ah, e me desculpe por ter infringido as regras, não foi minha intenção.

Quanto a vc .Vini., ficaria muito agradecido se me mandasse o código completo, sempre estou em busca de novos conhecimentos no Delphi, seria muito bom para mim.
Por favor, se possível mande no meu e-mail lhcsilva@yahoo.com.br

Valeu

Obrigado a todos


Macario
   - 01 set 2004

Que efeito do botão????


Fórum Vini
   - 01 set 2004

Ok lhcsilva,
vou lhe mandar o código..


Fórum Vini
   - 03 set 2004

Desculpa a demora, é que essa semana o bicho pegou.. :lol:
Eu resolvi deixar o link para o código aqui, assim qualquer pessoa pode baixar ele:
http://www24.brinkster.com/hashcode/pbb/MeuBitBtn.zip
Basta instalar o componente e usar os eventos onMouseEnter e onMouseLeave :D

Qualquer dúvida é só me falar,
T+,
Vinicius;