Salve, stavo provando a far comunicare due classi (EventiRemember e Numero) il problema subentra quando cerco di usare il metodo setText sulla JLabel chiamata l, so che l'errore e' causato dal fatto che non posso usare il setText() su una label di un altra classe ma non so come risolvere il problema.
codice:import java.awt.*; import java.awt.event.*; import javax.swing.*; class EventiRemember extends JFrame { EventiRemember() { Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); Numero n = new Numero(); int w = 0; int h = 0; int w1 = 400; int h1 = 400; w = (((d.width)/2)-(w1/2)); h = (((d.height)/2)-(h1/2)); this.setBounds(w,h,w1,h1); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLayout(null); this.setVisible(true); JButton bottone = new JButton("Clicca"); bottone.setBounds(150,200,100,50); bottone.addMouseListener(new Ascoltatore()); bottone.setVisible(true); JLabel l = new JLabel(); l.setBounds(150,10,100,50); l.setVisible(true); this.add(bottone); this.add(l); } public static void main(String args[]) { EventiRemember e = new EventiRemember(); } } class Ascoltatore extends MouseAdapter { int k = 0; public void mouseClicked(MouseEvent oggettoEvento) { Numero n = new Numero(); k++; n.i = k; if(n.i > 0) { l.setText(""+n.p+""); //errore } if(n.i == 100) { System.exit(0); } } } //la classe numero contiene solo le variabili int i = 0; int p = 0;

Rispondi quotando