Pessoal gostaria de saber se existe alguma foma de identificar num laço for, por exemplo, todos os componentes de um jFrame que são do tipo jtextfield?
Caso exista infomar código
Abração.
Pessoal gostaria de saber se existe alguma foma de identificar num laço for, por exemplo, todos os componentes de um jFrame que são do tipo jtextfield?
Caso exista infomar código
Abração.
A classe JFrame tem um método chamado getContentPane, que te retorna um objeto da classe Container.
A classe Container tem um método chamado getComponents, que te retorna um array de objetos da classe Component.
Varre esse array com um laço for, testando a cada iteração com instanceOf
if (objeto instanceof classe_desejada)
e aí tu faz o que tu quiseres.
if (obj instanceof JTextField)
Isto já resolve o seu caso!
if (obj instanceof JTextField)Isto já resolve o seu caso!
Ele precisa de um laço pra testar todos os objetos que estão em um JFrame… por isso os métodos anteriores, manja?
Se voce alterar esse código voce consegue.
private List<JTextComponent> getAllTextComps(Container cont,
List<Component> mapped) {
if (mapped == null)
mapped = new ArrayList<Component>();
for (Component comp : cont.getComponents()) {
if (comp instanceof JTextComponent)
mapped.add((JTextComponent)comp);
if (comp instanceof Container)
mapComps((Container) comp, mapped);
}
return mapped;
}
E para chamar.
List<JTextComponents> list = getAllTextComps(container,null);
Meus caros amigos, muito obrigado. Problema resolvido.
Obrigado a todos.