Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [java] timer

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613

    [java] timer

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;

    public class Check{
    public static void main (String[] args){
    int intervallo = 3000;
    new Timer(intervallo, new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    System.out.println("Sono passati 3 sec");
    }
    });
    timer.start();
    }

    }

    questo è tutto il codice... mi pare semplice ma... non funziona ):
    volgio dire non da nessun tipo di errore ma non stampa la stringa!

  2. #2
    codice:
    Timer timer = new Timer(intervallo,new ActionListener() {
            public void actionPerformed(ActionEvent e){
                  System.out.println(e);
            }});
    timer.start();
    così dovrebbe funzionare correttamente.
    Ciao
    ► ☺ ◄

  3. #3
    Utente di HTML.it L'avatar di Xadoom
    Registrato dal
    Dec 2002
    Messaggi
    1,491
    Oppure fai implementare ActionListener alla tua classe e sovrascrivi ActionPerformed(ActionEvent evt){..} in questo modo forse il codice è più chiaro.
    Ciao
    Windows Xp
    [Java]
    [PHP]Notepad++
    [Fortran90-77] elf90 g77
    [C++ /WinAPI] DevC++ VisualC++

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    So di essere un pò co*lione ma continua a non funzionare.
    Ora il dubbio che mi viene è: non devo per forza mettere un pulsante che dia lo start al timer vero?
    Ho provato in entrambi i modi...
    Il codice non da nessun errore ma nemmeno stampa nulla
    :quote: (disperazione)

    Grazie per l'impegno

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    L'ho provato anch'io e ho notato che non funziona. Probabilmente perchè l'applicazione termina.

    Un consiglio: usa un thread!
    codice:
    private class MioTimer extends Thread {
       private int millis;
       public MioTimer(int millis) {
          this.millis = millis;
       }
    
       public void run() {
          try {
             sleep(millis);
             System.out.println("Sono passati " + millis + " millisecondi");
          } catch (Exception e) {}
       }
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    613
    import java.util.Timer;
    import java.util.TimerTask;

    public class Starter {

    Timer timer;

    public Starter() {
    timer = new Timer();
    timer.schedule(new taskDaEseguire (), 0, 15000);
    }

    class taskDaEseguire extends TimerTask {
    public void run() {
    System.out.println("Eseguito, sono passati 15 sec");
    }
    }
    }

    Ha ragione LeleFt, infatti avevo isolto con quest'altro metodo (: grazie a tutti

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