Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Criar eventos .onclick dinamicamente


RogerioGottardi

Pergunta

Estou criando alguns Timages em massa, e gostaria de atribuir a cada um deles, um evento .onclick diferente. Gostaria que quando fosse clicado em algum deles, mostrasse uma mensagem salva em uma matriz. Como proceder?

O que tenho até agora é:
procedure TForm1.Button3Click(Sender: TObject);
Var
Contador : integer;
begin
Setlength(minhasimagens,6);
Setlength(meuslinks,6);
For Contador := 0 To 5 Do
Begin
MinhasImagens[Contador] := TImage.Create(Form1);
MinhasImagens[Contador].Name := 'image' + IntToStr(Contador);
MinhasImagens[Contador].Parent := Form1;
MinhasImagens[Contador].Top := ((Contador + 1) * 200);
MinhasImagens[Contador].Height := 200;
MinhasImagens[Contador].width := 350;
minhasimagens[contador].stretch:=true;
meuslinks[contador]:='ttt'+inttostr(contador);
minhasimagens[contador].onclick:=????
MinhasImagens[Contador].picture.loadfromfile('C:\Users\X\A.jpg');

End;
end;

end.
O link está sendo salvo na matriz MeusLinks[contador].
Lembrando que declarei o MeusImagens e MeusLinks lá em cima, no public.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Pelo que eu entendi, quando voce clica no botão, são criados no form 6 Timages dinamicamente, e voce quando clicar em algum TImage, quer que apareça uma mensagem referente a esse TImage ...  é isso  ?

o nome das imagens seriam : image0, image1... image6  ( isso todas as vezes que voce clicar nesse botão )

se as imagens forem sempre as mesmas e carregadas sempre no mesmo TImage, não precisa nem usar matriz.

serão diferentes todas as vezes que voce clicar no botão ?  

Se forem, voce não pode atribuir um nome fixo ao TImage, mas teria que carregar o TImage com o nome da foto ( imagem )  e assim fazer a referencia ao nome dessa imagem.

assim como voce criou um evento dinamico para os TImages voce tambem pode criar um evento dinamico para o Onclick

como é que voce quer que isso funcione ?

Veja nesses links, alguns exemplos que voce pode usar

https://forum.imasters.com.br/topic/212535-evento-onclick-em-imagem-criada-dinamicamente/

https://www.experts-exchange.com/questions/23448044/TForm-Create-onClick-TImage-TButton-Dynamically-created-form-with-buttons-and-events.html

https://www.experts-exchange.com/questions/27313699/How-to-create-a-dynamic-event-handlers-for-components-created-at-runtime.html

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...