Salve a tutti.
Come da titolo del topic, il GregorianCalendar non mi restituisce la data e l'ora di sistema aggiornati.
Forse capirete meglio il mio problema postandovi del codice:
il codice non è ottimale per via della duplicazione della rigacodice:import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.GregorianCalendar; import javax.swing.JLabel; import javax.swing.Timer; /** * * @author Naruto 92 */ public class DataOra{ private JLabel d, o; private GregorianCalendar gc; public DataOra(JLabel data, JLabel ora){ d=data; o=ora; gc=new GregorianCalendar(); setDataOra(); new Timer(1000, new ActionListener(){ public void actionPerformed(ActionEvent evt){ setDataOra(); } }).start(); } private void setDataOra(){ System.out.println("Ora: " + gc.get(GregorianCalendar.HOUR_OF_DAY) + ":" + gc.get(GregorianCalendar.MINUTE) + ":" + gc.get(GregorianCalendar.SECOND)); d.setText("Data: " + gc.get(GregorianCalendar.DAY_OF_MONTH) + "/" + gc.get(GregorianCalendar.MONTH) + "/" + gc.get(GregorianCalendar.YEAR)); o.setText("Ora: " + gc.get(GregorianCalendar.HOUR_OF_DAY) + ":" + gc.get(GregorianCalendar.MINUTE) + ":" + gc.get(GregorianCalendar.SECOND)); } }
,ma verrà eliminata una volta risolto il problema (la uso a scopo di debug).codice:"Ora: " + gc.get(GregorianCalendar.HOUR_OF_DAY) + ":" + gc.get(GregorianCalendar.MINUTE) + ":" + gc.get(GregorianCalendar.SECOND)
lanciando in esecuzione il programma ottengo dalla S.o.p. la seguente visualizzazione:
Ora: 14:25:39
Ora: 14:25:39
Ora: 14:25:39
Ora: 14:25:39
Ora: 14:25:39
Ora: 14:25:39
Ora: 14:25:39
.............................
quando dovrei ottenere:
Ora: 14:25:39
Ora: 14:25:40
Ora: 14:25:41
Ora: 14:25:42
Ora: 14:25:43
Ora: 14:25:44
Ora: 14:25:45
....................................
oramai le ho provate tutte, ma senza risultato...
vi ringrazio per l'aiuto che saprete darmi.
Naruto 92

Rispondi quotando