Visualizzazione dei risultati da 1 a 8 su 8

Visualizzazione discussione

  1. #3
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Se questo codice che ho quotato lo metti (o l'hai già messo) nel for che si vede prima (quel for (int i = 0; i < 8; i++))
    ciao avevo già provato a fare cosi e purtroppo non sono riuscito a farlo funzionare perché mi da un errore riguardante qualcosa che tu hai accennato sotto. Facendo cosi
    codice:
    public void AggiungiPannelli(){
        for (int i = 0; i < 8; i++) {
            pannelli.add(new JPanel());
            pannelli.get(i).setBackground(Color.BLACK);
            pannelli.get(i).addMouseListener(new MouseAdapter() {
            @Override
             public void mousePressed(MouseEvent e) {
                   pannelli.get(i).setBackground(Color.RED);
             }
            @Override
             public void mouseReleased(MouseEvent e) {
                   pannelli.get(i).setBackground(Color.BLACK);
             }
        });
    }
    dentro nei due metodi mousePressed e Relased quando faccio la get per aggiornare il colore di background mi da errore sulla i dicendo "Local variable i defined in an enclosing scope must be final or effectively
    final".
    Ho provato a dichiarare la i come final globale ma non cambia nulla. E se metto la i come final all'interno del metodo nel ciclo poi non me la fa più incrementare perché mi dice che la variabile finale i non può essere assegnata. Sono bloccato a questo.
    Grazie mille davvero per l'aiuto che mi stai dando.

    ps mi scuso per i colori ma pur incollando senza formattazione il codice poi quando lo pubblico i colori rimangono...
    Ultima modifica di mike1991; 21-08-2016 a 11:43

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.