Definir Texto de várias jLabel com Loop

7 respostas
Splayer

Tem com vocês me ajudarem? Eu pensei em diminuir a quantidade de linhas do meu código, e resolvi tentar fazer algo assim:

for (int j = 1; j < 6; j++) {
       jLabel(j).setText("Número: "j + k + 1);
}

Obviamente não tive resultado mas essa era a minha ideia.

7 Respostas

Luan_Mark

pesquise sobre ArrayList, aprenda a usar e vc vai poder fazer isso

Splayer

Obrigado pela dica!

Splayer

Tentei fazer alguma coisa em ArrayList:

JLabel j1 = new JLabel();
int n = 0;
ArrayList<String> agenda = new ArrayList();
agenda.add(n, j1.setText("Hi"));
System.out.println(agenda);

E com : ArrayList<JLabel> agenda = new ArrayList();

Sem sucesso! :confused:

Luan_Mark

Faça assim:

ArrayList< JLabel> agenda = new ArrayList<>();

depois, em um for vc cria uma JLabel e adiciona ela na ArrayList

for(int j=1; j<6; j++){

JLabel j1 = new JLabel("Número: "+j + k + 1);

agenda.add(j1);

}

Daí pra vc acessar alguma das JLabel se vc precisar, faça assim:

agenda.get(int)

Depois do parêntese vc pode usar ele como uma JLabel normal, aperte ponto e vai abrir a lista de métodos da JLabel, exemplo, caso vc queira mudar o texto:

agenda.get(int).setText(“Novo texto”);

Obs: vc deve saber, mas pra garantir, o “int” dentro dos parênteses está representando um numero inteiro.

Eu meio que fiz o que eu entendi que vc queria fazer (do início do tópico)
lembrando que para pegar os valores de arrays vc sempre deve iniciar do zero, se usar um for vc deve iniciar do zero tbm, exemplo:

for(int a=0; a<agenda.size(); a++){…}

espero ter ajudado

peczenyj

obviamente vc fez um codigo errado, mas eu nao imagino que erro foi esse.

eu imagino que vc deva criar, por exemplo, um array de jLabels e armazenar uma referencia para cada objeto la. e ai vc faz esse loop.

mas a partir so desse codigo eu imagino que o seu jLabel(j) é algo que não faz o menor sentido…

Splayer

Tem como criar várias JLabel, por exemplo, usando ArrayList ou For? É isso que estou tentando fazer

Splayer

Logicamente está errado, eu só representei a minha ideia. Que to tentando criar várias JLabel em um ArrayList ou For

Criado 26 de agosto de 2016
Ultima resposta 2 de set. de 2016
Respostas 7
Participantes 3