Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JrRobson

Problemas com componente

Recommended Posts

Olá pessoal estou com seguinte duvida:Criei um componente que desenha figuras de acordo com a escolha de um determinado botão. Ao clicar em um botão crio o componente dentro de um ScrollBox, até aí beleza, o problema e que não consigo implementar os eventos do componente que crie em tempo de execução. como exemplo o evento onclick.Como devo Proceder?Se puderem me ajudar...Valeu pela Atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei entendi muito bem a sua questão, mas para atribuir o evento OnClick em tempo de execução pode fazer:

 

imagem.OnClick:=ClickImagem;

Pode criar a procedure sa seguinte forma:

 

procedure TForm1.ClickImagem(Sender: TObject);beginShowMessage('OI');end;

Assim é atribuído o evento OnClick a procedure ClickImagem, mostrando um ShowMessage.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei entendi muito bem a sua questão, mas para atribuir o evento OnClick em tempo de execução pode fazer:

imagem.OnClick:=ClickImagem;
Pode criar a procedure sa seguinte forma:
procedure TForm1.ClickImagem(Sender: TObject);beginShowMessage('OI');end;
Assim é atribuído o evento OnClick a procedure ClickImagem, mostrando um ShowMessage.
Marcio vou tentar ser mais claro.Tenho um componente que se chama AutomataControl, na minha janela principal tenho 4 botões ao clicar em um desses botoes chamo o metodo insertState aonde instancio um objeto desse componente,para cada botao que escolher esse componente toma formas diferentes, aí vou adicionado-os dentro de um scrollboxsó que depois não estou conseguindo manipular eventos com os componentes que instancio,como exemplo quero clicar num desses objetos e fazer aparecer um mensagem 'oi' algo assim. Vou mandar a parte do codigo aonde crio o componente isso pode te ajudar e entender.procedure InsertState (StateType: TAutomataControlType;PosX,PosY:integer; StName:String);var temp: TAutomataControl;begin temp := TAutomataControl.Create (FrmMain.ScrollBox1); with temp do begin ControlType := StateType; Parent := FrmMain.ScrollBox1; Name := 'ac' + IntToStr (Parent.ControlCount); SetBounds (PosX, PosY, Width, Height); end;end;Valeu pela atenção.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Márcio o problema a respeito dos eventos nos objetos do meu componente, como exemplo definir o que o eventoonclick deve fazer, conseque sanar. Só que estou com outra dúvida, quem sabe você pode me ajudar.Como saber qual componente eu cliquei ou seja retornar o componente que está em foco.Como fazer isso em tempo de execução?Valeu............

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.