JrRobson 0 Denunciar post Postado Janeiro 6, 2007 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
marcio.theis 3 Denunciar post Postado Janeiro 7, 2007 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
JrRobson 0 Denunciar post Postado Janeiro 7, 2007 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
marcio.theis 3 Denunciar post Postado Janeiro 8, 2007 No caso os componentes criados não tem propriedades como OnClick ? No qual poderia efetuar uma referência ? Compartilhar este post Link para o post Compartilhar em outros sites
JrRobson 0 Denunciar post Postado Janeiro 9, 2007 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
marcio.theis 3 Denunciar post Postado Janeiro 9, 2007 Isto no caso você pode pegar no evento de OnClick, pegando o Sender que é passado, no caso pode trabalhar com este Sender e descobrir todas as info do componente. Compartilhar este post Link para o post Compartilhar em outros sites
JrRobson 0 Denunciar post Postado Janeiro 11, 2007 Valeu Marcio.......Consegui resolver, coloquei outro problema que encontrei no forum se puder dar uma olhada..Abraços Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 11, 2007 beleza... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites