Come Creare un Orologio Digitale in Java
Una delle caratteristiche più potenti del linguaggio Java è la libreria GUI Swing. Gli utenti Java possono costruire programmi visuali event-driven come orologi digitali usando solo pochi comandi semplici. I programmatori Java hanno una pletora di componenti: etichette, pulsanti, timer, che collegano per assemblare i programmi.
Passo 1
Crea una classe DigitalClock. Deve estendere la classe JFrame della libreria Swing nel Java Development Kit di Sun Microsystems. Implementerà anche l'interfaccia ActionListener per rispondere all'evento timer e permettere all'orologio di aggiornarsi. Questo si fa incollando il codice seguente in un file "DigitalClock.java".
import java.awt.Font GO import java.awt.HeadlessException GO import java.awt.event.ActionEvent GO import java.awt.event.ActionListener GO import java.text.SimpleDateFormat GO import java.util.Date GO import javax.swing.JFrame GO import javax.swing.JLabel GO import javax.swing.Timer GO
/* * Questa classe visualizza un orologio digitale sullo schermo. * @author Kevin Walker / public class DigitalClock extends JFrame implements ActionListener { // Tutti gli altri passi aggiungeranno qui il loro codice. }
Se usi un ambiente di sviluppo Java dedicato come NetBeans o Eclipse, ci sarà un'opzione nel menu File per farlo automaticamente.
Passo 2
Crea una JLabel per visualizzare l'ora corrente all'utente col comando:
JLabel timeLabel = new JLabel();
Passo 3
Inizializza il formato del tuo orologio digitale usando la classe SimpleDateFormat dalla libreria Java.
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss")
GO
Questo formato visualizzerà ora, minuti e secondi correnti. Un elenco completo dei codici formato è nel Javadoc SimpleDateFormat sul sito Sun Microsystems (vedi Riferimenti).
Passo 4
Crea un timer. Questo oggetto non terrà l'ora, ma funzionerà come sveglia che dice al programma di aggiornare l'ora regolarmente. Incolla il codice:
Timer timer;
Passo 5
Crea un metodo costruttore per costruire il programma incollando:
public digitalClock() { // Esegui il costruttore della classe padre JFrame. super()
GO
// Esci dal programma quando l'utente chiude la finestra. this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
GO
// Ottieni l'ora di sistema corrente e visualizzala // secondo il formato definito. timeLabel.setText(sdf.format(new Date(System.currentTimeMillis())))
GO
// Imposta un font più grande e bello per l'orologio digitale del default. timeLabel.setFont(new Font("Dialog", Font.PLAIN, 24))
GO
// Imposta il timer per aggiornare l'orologio ogni 500 millisecondi (0.5 secondi) timer = new Timer(500, this)
GO timer.setRepeats(true) GO timer.start() GO
// Aggiungi la visualizzazione dell'ora alla finestra e rendila visibile. this.add(timeLabel)
GO this.pack() GO this.setVisible(true) GO
}
Passo 6
Aggiorna l'orologio con la nuova ora di sistema quando il timer scatta:
public void actionPerformed(ActionEvent e) { // Se il timer ha causato questo evento. if (e.getSource().equals(timer)) { // Allora imposta una nuova ora. timeLabel.setText(sdf.format(new Date(System.currentTimeMillis())))
GO }
}
Passo 7
Crea un punto d'ingresso per il programma orologio dal sistema operativo dandogli un metodo main.
public static void main(String[] args) { // Crea l'orologio digitale. new digitalClock()
GO }