Criacao de componente em RunTime
Estou desenvolvendo um projeto no qual preciso criar componentes em tempo de execução. Até aí tudo bem. Porem estou tendo dificuldade de elaborar uma rotina para saber em qual desses componentes criados em run-time o usuário está interagindo. Ex: Se eu criei cinco componenetes do tipo TButton em RunTime, como eu faco para saber que em qual dos botoes o usuario clicou e disparar a rotina a associada ao evento desse botão.
Obs: A rotina a ser disparada é a mesma para todos os botoes mas eu preciso saber qual o botao que o usuario clicou. O numero de componentes criados em run-time é variável.
Obs: A rotina a ser disparada é a mesma para todos os botoes mas eu preciso saber qual o botao que o usuario clicou. O numero de componentes criados em run-time é variável.
Tatuweb
Curtidas 0
Respostas
Ltres
09/03/2004
Cara pelo q entendi vc só quer saber qual botão o user clico.. bom ai vai um exemplo q fiz de como receber informações do botao clicado
Vc pode trocar o Caption pelo Tag do button por exemplo..
Note q criei uma procedure q é disparada no evendo OnClick de cada button.. mas é a mesma para todos
var Botoes: array of TButton; procedure TForm1.BotoesClick(Sender: TObject); begin Showmessage(TButton(Sender).Caption); end; procedure TForm1.Button1Click(Sender: TObject); const n: integer = 5; //nº de botoes var c: integer; begin for c:=0 to n-1 do begin SetLength(Botoes, c+1); Botoes[c] := TButton.Create(Self); Botoes[c].Parent := Self; Botoes[c].Left := c*10; Botoes[c].Top := c*10; Botoes[c].Caption := ´Botão n´ + IntToStr(C); Botoes[c].OnClick := BotoesClick; end; end;
Vc pode trocar o Caption pelo Tag do button por exemplo..
Note q criei uma procedure q é disparada no evendo OnClick de cada button.. mas é a mesma para todos
GOSTEI 0
Pantoja
09/03/2004
Bem fiz algo bem parecido uma vez ... criei uma variavel do tipo TSpeedbutton e ao clicar num botao criava outro ai eu clicava no que foi criado e criava um outo mudando a cor do que foi clicado...
fica uma pergunda nao teria uma maneira melhor para detectar o botao clicado?
fica uma pergunda nao teria uma maneira melhor para detectar o botao clicado?
GOSTEI 0