Problemas com threads: java.awt.EventDispatchThread.pumpEvents

1 resposta
Reginildo

Estou tentando entender o motivo para o erro java.awt.EventDispatchThread.pumpEvents e ainda não consigo entender. Alguém poderia me ajudar?

package com.reginildo.principal;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.EventQueue;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

@SuppressWarnings("serial")
public class Principal extends JFrame {


	JLabel labelRelogio;

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

	public Principal() {
		super("Teste Relogio");

		Thread thread = new Thread(new ClasseInterna());
		thread.start();

		Container container = getContentPane();
		container.setLayout(new BorderLayout());

		JPanel jPanel = new JPanel();
		jPanel.add(labelRelogio);

		container.add(BorderLayout.CENTER, jPanel);

		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		setSize(500, 500);
		setVisible(true);
	}

	public class ClasseInterna implements Runnable {
		@Override
		public void run() {
			DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss.SSS");
			Date date = new Date();
			String stringFormattedDate = dateFormat.format(date);

			try {
				while (true) {
					EventQueue.invokeLater(new Runnable() {
						public void run() {
							labelRelogio.setText(stringFormattedDate);
						}
					});
					Thread.sleep(1000);
				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}
}

1 Resposta

R

Estou com a mesma dúvida!

Criado 27 de maio de 2015
Ultima resposta 26 de mar. de 2016
Respostas 1
Participantes 2