Quote Originariamente inviata da Bombonera Visualizza il messaggio
ho implementato il metodo mouseClicked(). Quando l'utente clicca sul panel il compilatore stampa il messaggio: "prova". Mettiamo che io creo un'altro panel e lo chiamo panel2 e gli voglio far fare un'azione diversa, ad esempio stampa la frase: "hai premuto sul secondo pannello". come devo fare ?
La questione è un po' più ampia ... cerco di darti una breve spiegazione. Il punto è stabilire innanzitutto che cosa devi fare e con quali dati.

Scenario: hai N pannelli, ciascuno ha un background (colore, get/setBackground) differente. Su ognuno di essi registri la stessa implementazione di MouseListener. Se a te nel mouseClicked serve solo sapere quel colore di background, allora è banale: il "source" (come Object) dell'evento te lo dà il MouseEvent. Tu sai che è uno dei JPanel, fai un cast a JPanel e prendi il background. Stop (poi cosa ci fai con il colore è un altro discorso).

Se devi fare un'altra logica ... è da valutare. Ti è più chiaro?