GARANTIR DESCONTO

Fórum Contar objetos CheckBox #220243

12/03/2004

0

Pessoal ,estou com um problema..

Criei varios Componentes CheckBox em tempo de execução assim


procedure TForm1.CriaCheckBox(H, W, L, T, Nome : Integer; Capt : String); 
var Check : TCheckBox; 
begin 
     Check := TCheckBox.create(Application); 
     with Check do 
     begin 
          Parent := Form1; 
          height := H; 
          width := W; 
          caption := Capt; 
          left := L; 
          top := T; 
          Name := ´CheckBox´ + IntToStr(Nome); 
     end; 
end; 


Até ai tudo bem, mas preciso que ao clicar num botão seja
mostrado quantos checkbox o cliente marcou. É ai que ta o problema,
usando o comando abaixo esses esses componentes criados não apareçem, só os que eu coloquei em tempo de projeto.


procedure TForm1.BitBtn1Click(Sender: TObject); 
var n : LongInt; 
begin 
      for n := 0 to Form1.ComponentCount - 1 do 
      begin 
           if (Form1.Components[n] is TCheckBox) then 
           begin 
                if TCheckBox(Form1.components[n]).Checked = True then 
                begin 
                         * 
                         * 
                         * 
                         * 
                end; 
           end; 
      end; 
end; 


Tem como fazer esses componentes criados aparecerem no comando acima, sei lá alguma propriedade ao criá-los.
Alguem pode me ajudar?

Obrigado .

[b:d5f60c75e0][color=red:d5f60c75e0]Título editado pelo Moderador (AZ) - Removido: ´Urgente!!!´[/color:d5f60c75e0][/b:d5f60c75e0]


Analyst

Analyst

Responder

Posts

12/03/2004

Adilsond

Basta trocar o Application pelo Self, ou seja, os componentes criados pertencem ao Form em questão e não a aplicação.

procedure TForm1.CriaCheckBox(H, W, L, T, Nome : Integer; Capt : String);
begin
  with TCheckBox.Create(Self) do
    begin
      Parent := Form1;
      Height := H;
      Width := W;
      Caption := Capt;
      Left := L;
      Top := T;
      Name := ´CheckBox´ + IntToStr(Nome);
    end;
end;



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar