SwingUtilities.invokeLater();

1 resposta
J

Olá! Estou começando em Java...
e me apareceu essa dúvida!
Então...
Tive a oportunidade de conhecer um programa com esse início!

SwingUtilities.invokeLater(new Runnable() {
			public void run() {

				//Chama uma classe qualquer!

			}
		});

Porém não entendi oq esse método faz...
Tirei ele do código e nada aconteceu!
Se alguém puder me ajudar!
Desde já Agradeço! :!:

1 Resposta

R

Quando você trabalha em programas baseados nas tecnologias AWT ou Swing (interface gráfica), toda seção do seu código-fonte que atualize a interface precisa ser executada dentro de uma thread específica, responsável por enfileirar e despachar os eventos relacionados à interface. O que o método SwingUtilities.invokeLater() faz é receber um evento de interface (encapsulado numa implementação de Runnable; no exemplo que você deu, está sendo usada uma classe anônima) e enfileirá-lo, para que seja despachado pela thread de eventos de interface assim que houver oportunidade.

Criado 3 de julho de 2009
Ultima resposta 4 de jul. de 2009
Respostas 1
Participantes 2