Alguns pontos a serem observados:

1) Eu prestei atenção na sua dúvida sim, caro Rodrigo. Tanto é que fiz 
comentários pertinentes à alternativa que havia sido postada pelo Eduardo RC 
Neto e comentei que a referida alternativa remediaria o uso da forma como você 
colocou o (agora então) pseudo-código que você postou. Como poderia deduzir que 
vc estava usando uma forma algoritmica, mesclando sua notação com Object Pascal?

2) Não foi com a intenção de ofender que sugeri à você rever seus conhecimentos 
em Object Pascal. Isto pq o uso dos operadores 'is' e 'as' e o recurso de 
typecasting fazem parte do cerne do Object Pascal e, quando bem assimilados, 
resolveriam seu problema. E isso, volto a 
repetir, foi ilustrado na resposta enviada pelo Eduardo RC Neto que inclusive 
me prestei a comentar.

[]s

-----Mensagem original-----
De: rodrigo.americo [mailto:[EMAIL PROTECTED] 
Enviada em: segunda-feira, 29 de novembro de 2004 15:50
Para: [EMAIL PROTECTED]
Assunto: Re: [delphi-br] d6 / Usar FOR com nomes de objetos




Melqui,

Muito obrigado! Era exatamente isso que eu queria.
Até hoje não tinha sido apresentado para a função FindComponent. Essa 
de ela precisar apenas da string com o nome do objeto é uma mão na 
roda e garantirá a não-repetição de código dagora pra frente.

Vitor, 

Obrigado também. Sua solução salienta a idéia de que em programação 
quase tudo é possível e os meios para isto nem sempre são iguais e 
estanques.

Rubem Rocha,

Se você tivesse prestado atenção na minha dúvida, teria visto que eu 
escrevi "gostaria de fazer algo do tipo (é só a idéia!)". Escrevi a 
idéia do código utilizando uma lógica algorítmica. A sua sugestão 
para que eu reveja meus conhecimentos, não foi nada pertinente, por que, no 
final de contas, a solução veio! A você, sim, sugiro 
rever seus conceitos quanto à programação, que, muito mais que 
lógica, é uma arte e, também por isso, resiliente!
Não saber é apenas ignorância, acreditar que isso ou aquilo é 
impossível ou inalcançável é outra coisa...


[ ]s


Rodrigo Américo


>>> Solução:

for I := 1 to 4 do
  begin
  with FindComponent('EditData' + IntToStr(I)) as TEdit do
  begin
    ReadOnly := True;
    Font.Style := [fsBold];
    Color := clBtnFace;
  end
end;

>>> Mensagem inicial:
 
Pessoal,

A dúvida é a seguinte:

Tenho vários TEdit cujos nomes são EditData1, EditData2, EditData3, 
EditData4... Gostaria de fazer modificações gerais, em run-time, 
neste conjunto de objetos, por exemplo:

with EditData1 do

begin
  ReadOnly := True;
  Font.Style := [bsBold];
  Color := clBtnFace;
end;

Gostaria de fazer algo do tipo (é só a idéia!):
 
for I := 1 to 4 do
begin
  with EditData[I] do
  begin
    ReadOnly := True;
    Font.Style := [bsBold];
    Color := clBtnFace;
  end;
end;

Alguém sabe como fazer?

Obrigado,

 
Rodrigo Américo 





-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:  
http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:  [EMAIL PROTECTED] ou [EMAIL 
PROTECTED]
 
Links do Yahoo! Grupos




 




---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.799 / Virus Database: 543 - Release Date: 19/11/2004
 


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a