Fórum como no vb? #152204

05/04/2003

0

sei programar em vb e estou começando a aprendere em delphi e tenho uma pequena duvida;
no vb quando eu criar qualquer objeto como um array bastava simplesmento copiar e colar o objeto e o array estava criado.
Mas no delphi isso não funciona desta forma, como faço para criar por exemplo um ´editbox´ com o mesmo nome mas diferenciado por indice como no vb? :?:


Anonymous

Anonymous

Responder

Posts

05/04/2003

Anonymous

Em tempo de design nao tem como.


Responder

Gostei + 0

05/04/2003

As-mad

Se eu entendi direito vc pode utilizar a propriedade tag para configurar os grupos, mas terá q utilizar código para controlar esse agrupamento. Se vc utilizar um evento compartilhado por exemplo poderia utilizar algo como o comando:

procedure TForm1.Edit1Click(Sender: TObject);
begin
case (Sender as TEdit).Tag of
0: ShowMessage(´Edit 1´);
1: begin
ShowMessage(´Edit 2´);
Edit2.Visible := False;
end;
end;
end;


Responder

Gostei + 0

06/04/2003

Anonymous

:D Fico agradecido pela boa vontade de vocês, mas ou eu não consegui entender direito a dica :oops: ou não enderam o meu problema, vou tentar ser mais claro na minha pergunta.
imagine que eu tenha um cadastro com umas 30 editbox, e que em determinada parte no program eu tenha que... vamos dizer limpar todas e pelo o que eu conheço do delphi até agora(que por sinal não é muito(Pra dizer a verdade quase nada :oops: ))eu teria que apagar uma por uma.
No vb bastava eu criar um loop com as textboxcriadas como um array e o problema estava resolvido. Ex:
for a =1 to 30
campo(a).text=´´
next a
com este mesmo esquema eu conseguia manipular o banco de dados. :?
o que eu gostaria de saber é que se no delphi dá para fazer algo igual, e se da, como?
Desde já fico agradecido pela boa vontade de vocês.
:wink:


Responder

Gostei + 0

06/04/2003

Anonymous

Set a propriedade Tag dos componentes para um número.

E faça como mostra abaixo:

const
  TAG_CONJUNTOX = 1;

procedure ...
var
  i: integer;
begin
  for i := 0 to ComponentCount - 1 do begin
    if TEdit(Components[i]).Tag = TAG_CONJUNTOX then
      if Components[i] is TEdit then
        TEdit(Components[i]).Text := ´´;
  end;
end;


Se for fazer a operacao para todos os edits do form, entao nao precisa tratar um Tag.


Responder

Gostei + 0

06/04/2003

Anonymous

((Teve um erro no codigo da msg anterior. Veja este.))

Set a propriedade Tag dos componentes para um número.

E faça como mostra abaixo:

Código:

const
TAG_CONJUNTOX = 1;

procedure ...
var
i: integer;
begin
for i := 0 to ComponentCount - 1 do begin
if Components[i].Tag = TAG_CONJUNTOX then
if Components[i] is TEdit then
TEdit(Components[i]).Text := ´´;
end;
end;



Se for fazer a operacao para todos os edits do form, entao nao precisa tratar um Tag.


Responder

Gostei + 0

13/04/2003

Cal

:D Muito obrigado pela dica. funcionou direitinho :D


Responder

Gostei + 0

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

Aceitar