Visualizzazione dei risultati da 1 a 7 su 7

Visualizzazione discussione

  1. #1

    Cronometro con pausa /riprendi

    Buonasera, dovrei sviluppare un cronometro che preveda la funzione di pause/resume. Sto utilizzando un codice trovato in internet per il cronometro ( che parte premendo start e si ferma premendo stop) ma non riesco ad implementare la pausa/riprendi, qualcuno può darmi una mano?

    codice:
    import java.awt.*;  
    import java.awt.event.*;  
    import javax.swing.*
    
    public class Cronometro {  
        private JFrame frame;  
        private JLabel labelTime;  
        private JPanel panelButtons;  
        private JButton buttonStart;  
        private JButton buttonStop;  
        private Timer timer;  
        private long startTime; 
    
    public Cronometro() {  
        frame = new JFrame("Cronometro");  
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        frame.setSize(220, 140);  
        labelTime = new JLabel("0:00:00.0");  
        labelTime.setFont (new Font("SansSerif", Font.BOLD, 30));  
        labelTime.setHorizontalAlignment(JLabel.CENTER);  
        buttonStart = new JButton("START");  
        buttonStop = new JButton("STOP");  
        buttonStop.setEnabled(false);  
        panelButtons = new JPanel(new GridLayout(1, 2));  
        panelButtons.add(buttonStart);  
        panelButtons.add(buttonStop);  
        frame.add(labelTime, BorderLayout.CENTER);  
        frame.add(panelButtons, BorderLayout.SOUTH);  
        timer = new Timer(100, new ActionListener() {  
            public void actionPerformed(ActionEvent e) {  
                long diffTime = System.currentTimeMillis() - startTime;  
                int decSeconds = (int)(diffTime % 1000 / 100);  
                int seconds = (int)(diffTime / 1000 % 60);  
                int minutes = (int)(diffTime / 60000 % 60);  
                int hours = (int)(diffTime / 3600000);  
                String s = String.format("%d:%02d:%02d.%d", hours, minutes, seconds, decSeconds);  
                labelTime.setText(s);  
            }  
        });  
        buttonStart.addActionListener(new ActionListener () {  
            public void actionPerformed(ActionEvent e) {  
                startTime = System.currentTimeMillis();  
                timer.start();  
                buttonStart.setEnabled(false);  
                buttonStop.setEnabled(true);  
            }  
        });  
        buttonStop.addActionListener(new ActionListener() {  
            public void actionPerformed(ActionEvent e) {  
                timer.stop();  
                buttonStart.setEnabled(true);  
                buttonStop.setEnabled(false);  
            }  
        });  
        frame.setVisible (true);  
    }
    Ultima modifica di LeleFT; 02-02-2015 a 14:31
    steelass

Tag per questa discussione

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.