Pessoal,
Estou com uma pequena duvida: em java é possivel eu fazer atribuição de variaveis com o nome de uma dessas variaveis não fixa?
Por exemplo:
Eu atribuo assim:
label[0] = jLabel1;
mas como tenho vários JLabels, gostaria de poder atribuir de forma mais dinamica e não ter que colocar:
label[1] = jLabel2;
label[2] = jLabel3
//etc...
Será que seria possivel fazer isto com um laço?
for(...)
label[i] = jLabel__???//relacionado com i
thingol
Outubro 22, 2007, 5:05pm
#2
A resposta simples é “não, Java não é Javascript”.
“Reflection” poderia adiantar no seu caso, mas não é a solução mais adequada.
Eu normalmente faria algo como:
JLabel label0 = ...;
JLabel label1 = ...;
JLabel[] labels = {
label0,
label1,
...
};
ou então criaria os JLabels dinamicamente, o que é mais razoável.
Muito obrigado pela resposta thingol. Mas eu gostaria de evitar colocar essas atribuições pois tenho 100 JLabels
meu codigo ficaria:
label[0] = jLabel1;
label[1] = jLabel2;
label[2] = jLabel3;
.
.
.
label[99] = jLabel100;
Essa é a única forma de se fazer este tipo de atribuição?
Ou tem alguma outra forma? Onde entraria Reflection ai?
thingol
Outubro 22, 2007, 5:13pm
#4
Por que é que você tem 100 JLabels criados separadamente? Tem coisa errada aí.
Eu pq fiz na matisse… :oops:
Quer dizer, eu tinha feito com um vetor de JLabels, mas gostaria de saber como faria isso usando a matisse do netBeans.
Abraço.