Ciao a tutti ho il seguente problema ho implementato un'interfaccia grafica, a cui è stato aggiungo un timer all'interno del metodo costruttore di MyFrame.
io vorrei che una volta visualizzata la finestra, il timer continui a generare un numero casuale da 1 a 3, e a seconda del valore entri nello switch e aggiunga del testo nellaTextAreaRight.
facendo girare il codice, entra una volta nel timer, genera un numero, stampa il messaggio e BASTA.
il timer non funziona più, è come se il timer non funziona è li morto.
qualcuno per piacere mi può dare una dritta?
grazie a tutti
il codice principale è il seguente;
la classe MyFrame viene avviata da un altro oggetto.
codice:public class MyFrame extends JFrame{ private JTextArea textAreaRight; Timer t = new Timer(); public MyFrame(){ ...... ..... t.schedule(new SimulazioneTask(vG, this), 4000); } ...... ...... } class SimulazioneTask extends java.util.TimerTask{ private VariabiliGlobali vG; private MyFrame win; public SimulazioneTask(VariabiliGlobali vG, MyFrame win){ this.vG = vG; this.win = win; } public void run(){ boolean valore=false; int numeroCasuale= (int)(3*Math.random())+1; switch(numeroCasuale){ case 1: valore = this.win.getDeliveryAttend("Express"); System.out.println("E' possibile fare una consegna espressa "; this.win.getTextAreaRight().append("hhhh express"); break; case 2: valore = this.win.getDeliveryAttend("Normale"); System.out.println("e' possibile fare una consegna normale " + valore); this.win.getTextAreaRight().append("hhhh normale" ); break; case 3: valore = this.win.getDeliveryAttend("Large"); System.out.println("e' possibile fare una consegna large " + valore); this.win.getTextAreaRight().append("hhhh large"); break; } System.out.println("Hello World"); } }

Rispondi quotando
