Jump to content
Fórum Script Brasil
  • 0

Onmouseover, Como?


felipe_pr

Question

ae pessoa beleza?

eu estou com uma duvida...

eu gostaria de simular um efeito de movimento...

eu estou com 2 imagens, uma com a porta fechada outra com a porta aberta e gostaria de fazer que a imagem da porta aberta virase "true" quando o mouse passar por cima da porta fechada, mas eu não consegui fazer =[

eu tentei fazer assim:

btn_sairA.visible := true; //Porta Aberta

btn_sairF.visible := false; //Porta Fechada

Imagem 1

procedure TForm2.btn_sairFClick(Sender: TObject);

begin

if btn_sairF.visible = true then

  begin

    btn_sairA.visible := true;

    btn_sairF.visible := false;

  end;

end;

Imagem 2

procedure TForm2.btn_sairAClick(Sender: TObject);

begin

if btn_sairA.visible = true then

  begin

    btn_sairA.visible := false;

    btn_sairF.visible := true;

  end;

end;

apenas um problema... eu não sei se existe a função OnMouseOver ....

eu tentei com todos os "OnMouse" que encontrei =], mas, não consegui =[

Obrigado, abraços!

Felipe

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Vamos lá,

Faz o seguinte

- Deixe o botão abrir visible e o Fechar visible=False

No Onmousemove do Form:

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
ButtonAbrir.Visible:=True;
ButtonFechar.Visible:=False;
end;
No OnMouseMove do Botao Abrir
procedure TForm1.ButtonAbrirMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
 ButtonFechar.Visible:=True;
 ButtonAbrir.Visible:=False;
end;

Testa ae..

Abs.

Kiko

Link to comment
Share on other sites

  • 0

Olá kikonanet,

Colocar no evento do Form funciona se o butão tiver diretamente no form, se tiver dentro de um Panel por exemplo, o mouse ira passar primeiro pelo panel, com isso o cursor não estara mais em cima do butao e continuara do mesmo jeito ate o mouse chegar no form.

felipe_pr,

Em vez você usar 2 bitbtn você poderia usar só um.

Adicione no form um componente TImageList, e adicione as duas imagens dentro do ImageList, vamos supor nessa ordem: 0 = porta fechada; 1 = porta aberta.

Ae no MouseMove do Botao coloque:

begin

  BitBtn1.Glyph := nil;

  ImageList1.GetBitmap(1,BitBtn1.Glyph);

end;

e no MouseMove do Form ou do objeto mas proximo do BitBtn (Caso o BitBtn não esteja diretamente no form) você usa esse:

begin

  BitBtn1.Glyph := nil;

  ImageList1.GetBitmap(0,BitBtn1.Glyph);

end;

Entendeu?

Abs. Progr'amador.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...