Interpretar string como nombre de objeto
Buenas, queria saber si al igual que hice en su dia en flash, puedo hacerlo en java.
El problema es el siguiente:
Tengo un monton de JButton y queria hacer un for que recorriera los indices de cada jButton (sin estar en un array), es decir, que poniendo:
jbutton+i.setText(texto)
en flash yo lo hacia poniendo:
this["jbutton"+i].setText(texto)
y asi me interpretaba lo que ponia entre corchetes como un nombre de variable, en este caso, de un objeto.
Quizas me digais que con un array de JButton podria hacerlo mejor, pero seria un engorro a la hora de diseñar.
Bueno, si se puede, agradeceria que alguien me ayudara, un saludo de antemano.
El problema es el siguiente:
Tengo un monton de JButton y queria hacer un for que recorriera los indices de cada jButton (sin estar en un array), es decir, que poniendo:
jbutton+i.setText(texto)
en flash yo lo hacia poniendo:
this["jbutton"+i].setText(texto)
y asi me interpretaba lo que ponia entre corchetes como un nombre de variable, en este caso, de un objeto.
Quizas me digais que con un array de JButton podria hacerlo mejor, pero seria un engorro a la hora de diseñar.
Bueno, si se puede, agradeceria que alguien me ayudara, un saludo de antemano.
Hola,
No, la via normal para recorrer la liste de butones es de recorer los componentes del container, a saber por ejemplo el JPanel que contiene los butones. Algo asi :
for (int i =0; i < panel.getComponentCount(); i ++)
{
if (panel.getComponent(i) instanceof JButton)
{
((JButton) panel.getComponent(i)).setText(texto);
}
}
No, la via normal para recorrer la liste de butones es de recorer los componentes del container, a saber por ejemplo el JPanel que contiene los butones. Algo asi :
for (int i =0; i < panel.getComponentCount(); i ++)
{
if (panel.getComponent(i) instanceof JButton)
{
((JButton) panel.getComponent(i)).setText(texto);
}
}
