Uma das características mais poderosas da linguagem Java é sua biblioteca gráfica Swing (GUI). Usuários Java podem construir programas visuais orientados a eventos como relógios digitais usando apenas alguns comandos simples. Programadores Java têm uma infinidade de componentes disponíveis, como rótulos, botões e temporizadores, que conectam para montar seus programas.
Crie uma classe DigitalClock. Ela precisa estender a classe JFrame que vem com a biblioteca Swing da interface do usuário no Java Development Kit da Sun Microsystems. Também implementará a interface ActionListener para responder ao evento do temporizador e permitir que o relógio se atualize. Isso pode ser feito colando o seguinte código em arquivo chamado "DigitalClock.java".
import java.awt.Font;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.Timer;
/**
* Esta classe exibe um relógio digital na tela.
* @author Kevin Walker
*/
public class DigitalClock extends JFrame implements ActionListener {
// Todos os outros passos devem ter seu código adicionado aqui.
}
Se estiver usando ambiente de desenvolvimento Java dedicado como NetBeans ou Eclipse, haverá opção no menu Arquivo para fazer isso automaticamente.
Crie um JLabel para exibir a hora atual ao usuário:
JLabel timeLabel = new JLabel();
Inicialize o formato do seu relógio digital usando a classe SimpleDateFormat da biblioteca Java.
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss")
Este formato exibirá hora, minuto e segundos atuais. Lista completa de códigos de formato disponível no Javadoc SimpleDateFormat no site da Sun Microsystems (veja Referências).
Crie um temporizador. Este objeto não guardará a hora, mas funcionará como alarme que diz ao programa para atualizar a hora regularmente. Cole o seguinte código:
Timer timer;
Crie um método construtor para construir o programa colando o seguinte:
public DigitalClock() {
// Execute construtor da classe pai JFrame.
super();
// Saia do programa quando usuário fechar janela.
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Obtenha hora atual do sistema e exiba conforme formato definido.
timeLabel.setText(sdf.format(new Date(System.currentTimeMillis())));
// Defina fonte maior e mais bonita que a padrão.
timeLabel.setFont(new Font("Dialog", Font.PLAIN, 24));
// Defina temporizador para atualizar relógio a cada 500 ms (0,5 s)
timer = new Timer(500, this);
timer.setRepeats(true);
timer.start();
// Adicione display de hora à janela e torne visível.
this.add(timeLabel);
this.pack();
this.setVisible(true);
}
Atualize o relógio com nova hora do sistema sempre que temporizador disparar:
public void actionPerformed(ActionEvent e) {
// Se o temporizador causou este evento.
if (e.getSource().equals(timer)) {
// Defina nova hora.
timeLabel.setText(sdf.format(new Date(System.currentTimeMillis())));
}
}
Crie ponto de entrada para o programa de relógio digital do sistema operacional dando um método main.
public static void main(String[] args) {
// Crie o relógio digital.
new DigitalClock();
}
Tecnologia Eletrônica © [www.351231.com]