Hum..... interessante.... eu fiz uma assim....
No meu caso, trabalho com Form padrão do flex, e se caso eu tiver algum
container dentro de um FormItem, a função chama a si mesma passando o
container como argumento. Por isso o argumento é um Object (poderia ser um
Container... alterem se quiser)
Lembrando que todo container do Flex já extends da classe Container.as que,
por sua vez, implementa a interface IContainer. Graças ao conceito de
herança e poliformismo é possível descobrir facilmente quem é um container
ou não.
Dessa forma, posso ter infinito níveis de hierarquia de containers dentro do
form.
/**
* Limpa os campos de um formulário
*/
public static function cleanForm(form:Object) : void {
//pega um arrays de filhos do Container...
var itensdoFormulario:Array = form.getChildren();
// para cada filho ...
for each(var item:Object in itensdoFormulario) {
//... se for um outro container
if (item is Container) {
//chama a função novamente passando o filho como
argumento...
cleanForm(item);
} else { //senão é container, então é um objeto conhecido
//aqui estou limapando alguns campos... gostei da idéia
do switch, pode ser interessante, alterem se quiser....
if (item is TextInput ||
item is DateField ||
item is TextArea) {
item.text = "";//limpa a propriedade 'text' do
objeto conhecido
}
}
}
}
Fim.
Esse método faz parte do EloUtils, e por ser estático eu o chamo da seguinte
forma:
EloUtils.cleanForm(<id_do_form>) // pode ser aplicado encima de qualquer
container.
Abraços
Mario Junior
--
Mário de Souza Júnior
Programador Java / Flex : AS3 / PHP
(44) 4009-3550 Maringá-PR
http://blog.mariojunior.com
[EMAIL PROTECTED] (gtalk, msn, etc..)
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---