Horario e data na aplicação sendo vizualizada no title do jframe

Boa noite galera!!
Venho solicitar ajuda pra vcs, como coloco horario e data na barra de titulo da minha aplicação
não sei com fazer, mas me parece que é com threads, procurei na net, porém não consegui adaptar nada do que achei, vou postar o exemplo que encontre…

[code]import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.Timer;

public class MyFrame extends JFrame {
// Local onde atualizaremos a hora
private JLabel lblHora;

// Formatador da hora
private static final DateFormat FORMATO = new SimpleDateFormat("HH:mm:ss");

public MyFrame() {
    // Construímos nosso frame
    super("Exemplo");
    setLayout(new FlowLayout());
    getContentPane().add(getLblHora());
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(200, 75);
    setVisible(true);

    // Iniciamos um timer para atualizar o relógio
    Timer t = new Timer(1000, new ClockAction());
    t.setInitialDelay(0);
    t.setRepeats(true);
    t.start();
}

private JLabel getLblHora() {
    if (lblHora == null) {
        lblHora = new JLabel();
    }
    return lblHora;
}

/**
 * Método para atualizar a hora no formulário. Não é thread-safe, portanto,
 * se o utilizado fora da thread da AWT, deve-se utilizar um dos comandos da
 * EventQueue (invokeLater ou invokeAndWait).
 */
public void setHora(Date date) {
    getLblHora().setText(FORMATO.format(date));
}

/**
 * Action que contém o código que atuará na nossa thread. Basicamente, ele
 * chama o método setHora de segundo em segundo, passando a data atual.
 * Roda diretamente na thread da AWT.
 */
private class ClockAction implements ActionListener {

    public void actionPerformed(ActionEvent e)
    {
        // Só podemos chamar setHora diretamente dessa
        // forma, pois esse Runnable é uma InnerClass não
        // estática.
        setHora(new Date());
    }
}

public static void main(String args[]) {
    new MyFrame();
}

}
[/code]

Aguardo ajuda de vcs!!
VLW

O exemplo funciona, certo? Só que atualiza a hora no JLabel. Basta fazer com que atualiza no título da janela (setTitle). E para adicionar a data também, uma simples alteração no SimpleDateFormat resolve. Fiz a alteração e removi o que era desnecessário. Ficou assim:

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JFrame;
import javax.swing.Timer;

public class MyFrame extends JFrame {

	private static final long serialVersionUID = 1L;
	// Formatador da hora
	private static final DateFormat FORMATO = new SimpleDateFormat(
			"dd/MM/yy - HH:mm:ss");

	public MyFrame() {
		// Construímos nosso frame
		super("Exemplo");
		setLayout(new FlowLayout());
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setSize(300, 75);
		setVisible(true);

		// Iniciamos um timer para atualizar o relógio
		Timer t = new Timer(1000, new ClockAction());
		t.setInitialDelay(0);
		t.setRepeats(true);
		t.start();
	}

	/**
	 * Método para atualizar a hora no formulário. Não é thread-safe, portanto,
	 * se o utilizado fora da thread da AWT, deve-se utilizar um dos comandos da
	 * EventQueue (invokeLater ou invokeAndWait).
	 */
	public void setHora(Date date) {
		// aqui, ao invés de ajustar a hora no JLabel, você coloca no título da
		// aplicação. Só isso!
		setTitle(FORMATO.format(date));
		// poderia adicionar mais alguma coisa como em:
		// setTitle("Minha Aplicação - " + FORMATO.format(date));
	}

	/**
	 * Action que contém o código que atuará na nossa thread. Basicamente, ele
	 * chama o método setHora de segundo em segundo, passando a data atual. Roda
	 * diretamente na thread da AWT.
	 */
	private class ClockAction implements ActionListener {

		public void actionPerformed(ActionEvent e) {
			// Só podemos chamar setHora diretamente dessa
			// forma, pois esse Runnable é uma InnerClass não
			// estática.
			setHora(new Date());
		}

	}

	public static void main(String args[]) {
		new MyFrame();
	}
}

Blz hem mano!!
Vlw mesmo, vou implementar mais tarde!!!
Ate+++

Déjà vu.