Pessoal,
Procurei aqui no fórum e não encontrei a solução...
Preciso acessar todos os controles de um TForm. Vi que tem a propriedade "aControls"... Seria a solução, porém precisava da relação de TODOS os controles que estão no formulário, mas, essa propriedade somente me retorna o que está diretamente em TForm. Se tem um TBevel, por exemplo, eu teria que ver a propriedade "aControls" de TBevel. O que eu preciso é de todos os controles que estão no formulário, mesmo que esteja DENTRO de outros controles...
í‰ possível isso?
Obrigado pela atenção,
Reginaldo
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Propriedade aControls de TForm
-
- Mensajes: 475
- Registrado: Mar Jul 24, 2012 10:21 pm
Propriedade aControls de TForm
Assim resolveria?
aObjetos := Application:oMainForm:aControls
[]´s
"Sommus - Reginaldo" wrote in message news:512f4434$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Pessoal,
Procurei aqui no fórum e não encontrei a solução...
Preciso acessar todos os controles de um TForm. Vi que tem a
propriedade "aControls"... Seria a solução, porém
precisava da relação de TODOS os controles que estão no
formulário, mas, essa propriedade somente me retorna o que
está diretamente em TForm. Se tem um TBevel, por exemplo,
eu teria que ver a propriedade "aControls" de TBevel. O que
eu preciso é de todos os controles que estão no
formulário, mesmo que esteja DENTRO de outros controles...
í‰ possível isso?
Obrigado pela atenção,
Reginaldo
aObjetos := Application:oMainForm:aControls
[]´s
"Sommus - Reginaldo" wrote in message news:512f4434$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Pessoal,
Procurei aqui no fórum e não encontrei a solução...
Preciso acessar todos os controles de um TForm. Vi que tem a
propriedade "aControls"... Seria a solução, porém
precisava da relação de TODOS os controles que estão no
formulário, mas, essa propriedade somente me retorna o que
está diretamente em TForm. Se tem um TBevel, por exemplo,
eu teria que ver a propriedade "aControls" de TBevel. O que
eu preciso é de todos os controles que estão no
formulário, mesmo que esteja DENTRO de outros controles...
í‰ possível isso?
Obrigado pela atenção,
Reginaldo
Propriedade aControls de TForm
Sim, é possível, mas vocíª precisa usar recursividade.
Tente algo assim:
// obter todos os controles de um form
aLista := ObterControles( oForm )
// bla, bla, bla...
// procedure para obter lista de controles de um TWinControl ou descendente
Procedure ObterControles( oParent, aControles )
LOCAL oControl
IF aControles = Nil
aControles := {}
ENDIF
FOR EACH oControl IN oParent:aControls
IF oControl:IsKindOf("TWinControl")
ObterControles( oControl, aControles )
ENDIF
NEXT
RETURN aControles
Não testei, mas deve ser mais ou menos isso.
Regards,
Tente algo assim:
// obter todos os controles de um form
aLista := ObterControles( oForm )
// bla, bla, bla...
// procedure para obter lista de controles de um TWinControl ou descendente
Procedure ObterControles( oParent, aControles )
LOCAL oControl
IF aControles = Nil
aControles := {}
ENDIF
FOR EACH oControl IN oParent:aControls
IF oControl:IsKindOf("TWinControl")
ObterControles( oControl, aControles )
ENDIF
NEXT
RETURN aControles
Não testei, mas deve ser mais ou menos isso.
Regards,