RE: [delphi-br] [maf] Resetar variavel
Ok... O operador as já testa se a instância é da classe. O seu código pode ser descompilado assim: if Variavel is Tipo then Result := Tipo(Variavel) else raise EInvalidCast. etc. Portanto seu código if Variavel is Tipo then (Variavel as Tipo).Prop := Valor; seria equivalente ao seguinte: if Variavel is Tipo then if Variavel is Tipo then Tipo(Variavel).Prop := Valor else raise EInvalidCast...etc. Você está perguntando para a variável seu tipo 2 vezes! O código abaixo: if Variavel is Tipo then Tipo(Variavel).Prop := Valor; é mais eficiente. Um abraço, Daniel Polistchuck Consulting Services Manager http://info.borland.com.br/borcon Tel.: (55 11) 2165 - 8000 / 8196-5947 http://info.borland.com.br/borcon [EMAIL PROTECTED] - www.borland.com.br http://www.borland.com.br/ A Borland Software é líder mundial em soluções independentes de plataforma para a Criação Otimizada de Software (Software Delivery Optimization), auxiliando nossos clientes a transporem as barreiras atuais do desenvolvimento, para maximizar o valor do software para seu negócio. http://info.borland.com.br/delphi From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of Alencar - Philler Informatica Sent: Sunday, January 22, 2006 1:59 PM To: delphi-br@yahoogrupos.com.br Subject: Re: [delphi-br] [maf] Resetar variavel poderia ser reescrito assim if (TForm.Components[Cont] is TLabel) then TLabel(TForm.Components[Cont]).Caption := ''; O as não é necessário, já que você já usou o is. Daniel Polistchuck Consulting Services Manager Ola Daniel. Gosto de saber o porquê das coisas, pois isso acrescenta conhecimento e tira a cegueira. Poderia explicar o quê ou quanto muda a nivel de processamento desse jeito q vc sugeriu? Obrigado. Alencar --- Philler Informatica Ltda Jose Alencar Philereno ICQ 13458351 Messenger/Skype (voz): alencar Feliz aquele que transfere o que sabe e aprende o que ensina Cora Coralina -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE http://br.rd.yahoo.com/SIG=12f3t0kgm/M=387526.7874194.8723313.1588051/D=brclubs/S=2137111264:HM/Y=BR/EXP=1137952754/A=3250393/R=2/id=noscript/SIG=16e71fapv/*http://landingstrip.dell.com/landingstrip/ls.asp?CID=10194LID=295942DGC=BADGStor=DHSDGSite=YahooConum=BRDURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3Dbr%26l%3Dpt%26s%3Dbsd 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] mailto:[EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo! http://br.yahoo.com/info/utos.html . [As partes desta mensagem que não continham texto foram removidas] -- 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] 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
Re: [delphi-br] [maf] Resetar variavel
poderia ser reescrito assim if (TForm.Components[Cont] is TLabel) then TLabel(TForm.Components[Cont]).Caption := ''; O as não é necessário, já que você já usou o is. Daniel Polistchuck Consulting Services Manager Ola Daniel. Gosto de saber o porquê das coisas, pois isso acrescenta conhecimento e tira a cegueira. Poderia explicar o quê ou quanto muda a nivel de processamento desse jeito q vc sugeriu? Obrigado. Alencar --- Philler Informatica Ltda Jose Alencar Philereno ICQ 13458351 Messenger/Skype (voz): alencar Feliz aquele que transfere o que sabe e aprende o que ensina Cora Coralina -- 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] 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
RES: [delphi-br] [maf] Resetar variavel
** Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria * Voce pode fazer um loop no TForm.ComponenteCount -1... verificando pelos componentes que sao Tlabel Exe procedure TForm1.Button1Click(Sender : TObjetct); var Cont : Integer; {Varivel para controlar o loop } begin { Faco um loop em todos os componentes do form } for Cont := 0 to TForm1.ComponentCount -1 do begin { Verifico se o mesmo é um label } if (TForm.Components[Cont] is TLabel) then { Se for um label, entao dou um cast (procure no help do delphi sobre 'is' e 'as') ajustando o caption do mesmo para '' } (TForm.Components[Cont] as TLabel).Caption := ''; end; end; Ok; (pode haver erros de digitacao, pois fiz o exemplo aqui no email) Atenc. Elazar ___ Yahoo! doce lar. Faça do Yahoo! sua homepage. http://br.yahoo.com/homepageset.html -- 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] 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
RE: [delphi-br] [maf] Resetar variavel
Olá Eleazar, Só uma sugestão. Seu código: { Verifico se o mesmo é um label } if (TForm.Components[Cont] is TLabel) then { Se for um label, entao dou um cast (procure no help do delphi sobre 'is' e 'as') ajustando o caption do mesmo para '' } (TForm.Components[Cont] as TLabel).Caption := ''; poderia ser reescrito assim if (TForm.Components[Cont] is TLabel) then TLabel(TForm.Components[Cont]).Caption := ''; O as não é necessário, já que você já usou o is. Um abraço, Daniel Polistchuck Consulting Services Manager http://info.borland.com.br/borcon Tel.: (55 11) 2165 - 8000 / 8196-5947 http://info.borland.com.br/borcon [EMAIL PROTECTED] - www.borland.com.br http://www.borland.com.br/ A Borland Software é líder mundial em soluções independentes de plataforma para a Criação Otimizada de Software (Software Delivery Optimization), auxiliando nossos clientes a transporem as barreiras atuais do desenvolvimento, para maximizar o valor do software para seu negócio. http://info.borland.com.br/delphi From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of Elazar Sent: Thursday, January 19, 2006 8:09 AM To: delphi-br@yahoogrupos.com.br Subject: RES: [delphi-br] [maf] Resetar variavel ** Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria * Voce pode fazer um loop no TForm.ComponenteCount -1... verificando pelos componentes que sao Tlabel Exe procedure TForm1.Button1Click(Sender : TObjetct); var Cont : Integer; {Varivel para controlar o loop } begin { Faco um loop em todos os componentes do form } for Cont := 0 to TForm1.ComponentCount -1 do begin { Verifico se o mesmo é um label } if (TForm.Components[Cont] is TLabel) then { Se for um label, entao dou um cast (procure no help do delphi sobre 'is' e 'as') ajustando o caption do mesmo para '' } (TForm.Components[Cont] as TLabel).Caption := ''; end; end; Ok; (pode haver erros de digitacao, pois fiz o exemplo aqui no email) Atenc. Elazar ___ Yahoo! doce lar. Faça do Yahoo! sua homepage. http://br.yahoo.com/homepageset.html -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE http://br.rd.yahoo.com/SIG=12fc7mrgv/M=387526.7663462.8711128.1588051/D=brclubs/S=2137111264:HM/Y=BR/EXP=1137695321/A=3244686/R=2/id=noscript/SIG=16ea5dsno/*http://landingstrip.dell.com/landingstrip/ls.asp?CID=10157LID=293453DGC=BADGStor=DHSDGSite=YahooConum=BRDURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3Dbr%26l%3Dpt%26s%3Ddhs 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] mailto:[EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo! http://br.yahoo.com/info/utos.html . [As partes desta mensagem que não continham texto foram removidas] -- 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] 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
Re: [delphi-br] [maf] Resetar variavel
Boua essa daí mestreual []'s Topolniak. - Original Message - From: Daniel Polistchuck [EMAIL PROTECTED] To: delphi-br@yahoogrupos.com.br Sent: Thursday, January 19, 2006 2:31 PM Subject: RE: [delphi-br] [maf] Resetar variavel Olá Eleazar, Só uma sugestão. Seu código: { Verifico se o mesmo é um label } if (TForm.Components[Cont] is TLabel) then { Se for um label, entao dou um cast (procure no help do delphi sobre 'is' e 'as') ajustando o caption do mesmo para '' } (TForm.Components[Cont] as TLabel).Caption := ''; poderia ser reescrito assim if (TForm.Components[Cont] is TLabel) then TLabel(TForm.Components[Cont]).Caption := ''; O as não é necessário, já que você já usou o is. Um abraço, Daniel Polistchuck Consulting Services Manager http://info.borland.com.br/borcon Tel.: (55 11) 2165 - 8000 / 8196-5947 http://info.borland.com.br/borcon [EMAIL PROTECTED] - www.borland.com.br http://www.borland.com.br/ A Borland Software é líder mundial em soluções independentes de plataforma para a Criação Otimizada de Software (Software Delivery Optimization), auxiliando nossos clientes a transporem as barreiras atuais do desenvolvimento, para maximizar o valor do software para seu negócio. http://info.borland.com.br/delphi From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of Elazar Sent: Thursday, January 19, 2006 8:09 AM To: delphi-br@yahoogrupos.com.br Subject: RES: [delphi-br] [maf] Resetar variavel ** Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria * Voce pode fazer um loop no TForm.ComponenteCount -1... verificando pelos componentes que sao Tlabel Exe procedure TForm1.Button1Click(Sender : TObjetct); var Cont : Integer; {Varivel para controlar o loop } begin { Faco um loop em todos os componentes do form } for Cont := 0 to TForm1.ComponentCount -1 do begin { Verifico se o mesmo é um label } if (TForm.Components[Cont] is TLabel) then { Se for um label, entao dou um cast (procure no help do delphi sobre 'is' e 'as') ajustando o caption do mesmo para '' } (TForm.Components[Cont] as TLabel).Caption := ''; end; end; Ok; (pode haver erros de digitacao, pois fiz o exemplo aqui no email) Atenc. Elazar ___ Yahoo! doce lar. Faça do Yahoo! sua homepage. http://br.yahoo.com/homepageset.html -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE -- 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] 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
RES: [delphi-br] [maf] Resetar variavel
Daniel; Olá Eleazar, * So pra corrigiré 'Elazar' mesmo (sem o segundo 'e')...rs realmente...muito interessante, e é incrivel pois, todos os dos exemplos de codigo assim que ja vi usam o as mesmo de1pois que foi verificado com o is. if (TForm.Components[Cont] is TLabel) then TLabel(TForm.Components[Cont]).Caption := ''; Comentário Isso que da trabalhar na Borland Atenc. Elazar ___ Yahoo! doce lar. Faça do Yahoo! sua homepage. http://br.yahoo.com/homepageset.html -- 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] 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
[delphi-br] [maf] Resetar variavel
Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria Tecnisystems Informática [As partes desta mensagem que não continham texto foram removidas] -- 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] 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
Re: [delphi-br] [maf] Resetar variavel
for i:= 1 to 140 do TLabel(FindComponent('Label'+lntToStr(i))).Caption := '' - Original Message - From: tecnisystems To: delphi-br Sent: Wednesday, January 18, 2006 6:17 PM Subject: [delphi-br] [maf] Resetar variavel Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria Tecnisystems Informática [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE -- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- 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] 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
Re: [delphi-br] [maf] Resetar variavel
Mano, tenta assim ó: var i:Smallint; begin {---} For i := 1 To ComponentCount - 1 Do If (Components[i] Is TLabel) Then with Components[i] As TLabel Do Caption:=''; End; Verifique o código por favor, pois não compilei []'s Topolniak. - Original Message - From: tecnisystems [EMAIL PROTECTED] To: delphi-br delphi-br@yahoogrupos.com.br Sent: Wednesday, January 18, 2006 7:17 PM Subject: [delphi-br] [maf] Resetar variavel Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria Tecnisystems Informática [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Links do Yahoo! Grupos -- 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] 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
RES: [delphi-br] [maf] Resetar variavel
Procedure LimpaCampos; Var i : integer; Begin For i := 1 to form_.ComponentCount -1 do Begin If form_.Components[i] is TLabel then begin (form_.Components[i] as TLabel).Caption:=; End; End; End; _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Topolniak Enviada em: quarta-feira, 18 de janeiro de 2006 16:50 Para: delphi-br@yahoogrupos.com.br Assunto: Re: [delphi-br] [maf] Resetar variavel Mano, tenta assim ó: var i:Smallint; begin {---} For i := 1 To ComponentCount - 1 Do If (Components[i] Is TLabel) Then with Components[i] As TLabel Do Caption:=''; End; Verifique o código por favor, pois não compilei []'s Topolniak. - Original Message - From: tecnisystems [EMAIL PROTECTED] To: delphi-br delphi-br@yahoogrupos.com.br Sent: Wednesday, January 18, 2006 7:17 PM Subject: [delphi-br] [maf] Resetar variavel Pessoal Tenho a seguinte duvida. Suponhamos que eu tenho 20 labels com os seguintes nomes. lbNome1, lbNome2, ..., lnNome20. Gostaria de colocar valor vazio no caption delas com um comando for. Alguém já fez algo parecido, pois na verdade tenho 140 labels a zerar. Att, Marcos Ferreria Tecnisystems Informática [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE http://br.rd.yahoo.com/SIG=12fmv11tj/M=387526.7663462.8711128.1588051/D=brc lubs/S=2137111264:HM/Y=BR/EXP=1137630741/A=3244686/R=2/id=noscript/SIG=16ea5 dsno/*http:/landingstrip.dell.com/landingstrip/ls.asp?CID=10157LID=293453D GC=BADGStor=DHSDGSite=YahooConum=BRDURL=http://www1.la.dell.com/content/ products/category.aspx/desktops?c%3Dbr%26l%3Dpt%26s%3Ddhs http://br.i1.yimg.com/br.yimg.com/i/br/ads7/0117_lrec_dell_ene13_dhs_dim110 0n.gif _ 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] mailto:[EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo! http://br.yahoo.com/info/utos.html . [As partes desta mensagem que não continham texto foram removidas] -- 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] 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