Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Timer in Java

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    7

    Timer in Java

    Salve a tutti, sono nuovo da queste parti.
    Non sono molto esperto di programmazione orientata agli oggetti.
    Avrei un problema con un programma con interfaccia grafica che sto realizzando; in pratica dovrei utilizzare un timer attivato con un pulsante che ogni secondo faccia cambiare il colore di alcune JComponet prensenti nel JFrame.
    Finora sono riuscito ad attivare il timer con il metodo timer1.schedule(task1, 0, 1000) dove timer è una instanza della classe MyTask che ho definito in questa maniera:
    codice:
    class MyTask extends TimerTask 
    {
    	public void run() 
    	{
    		\\codice...
    	}
    }
    al posto di codice dovrei inserire (stando a quanto ho letto) il codice da eseguire ogni secondo. Come faccio a cambiare il colore delle JComponent all'interno del metodo run()?

    Grazie a chiunque voglia rispondermi.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Timer in Java

    Originariamente inviato da gibu
    Salve a tutti, sono nuovo da queste parti.
    Non sono molto esperto di programmazione orientata agli oggetti.
    Avrei un problema con un programma con interfaccia grafica che sto realizzando; in pratica dovrei utilizzare un timer attivato con un pulsante che ogni secondo faccia cambiare il colore di alcune JComponet prensenti nel JFrame.
    Se devi interagire con dei componenti dell'interfaccia grafica è meglio usare javax.swing.Timer invece di java.util.Timer.
    Questo perché le modifiche sui componenti vanno fatte nel event-dispatch-thread, non in un qualunque altro thread.
    Infatti javax.swing.Timer lancia dei ActionEvent, quindi sei dentro il e.d.t. Certo ... potresti anche usare l'altro timer, quello in java.util ma poi comunque dovresti passare al e.d.t. e la cosa è certamente fattibile ma più noiosa.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    7
    Grazie andbin per la risposta...
    Potresti farmi un esempio, anche il più banale, per capire nella pratica come devo agire per cambiare il colore dei JComponent ad ogni intervallo di tempo specificato dal timer?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da gibu
    Potresti farmi un esempio, anche il più banale, per capire nella pratica come devo agire per cambiare il colore dei JComponent ad ogni intervallo di tempo specificato dal timer?
    Fai prima (molto prima) a vedere (e magari anche provare praticamente) un mio esempio di cronometro che avevo postato in questa discussione.

    Inoltre leggi questa discussione, in particolare i link che avevo indicato.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    7
    Grazie, leggerò tutto.

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    7
    Sono riuscito a risolvere, grazie.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.