Desabilitar clique no JFrame

Boa tarde pessoal!
Tenho um JFrame na aplicação, e quando chamo para fazer o relatório aparece uma tela para que o usuário aguarde.
O problema é que eu preciso desabilitar o clique no frame de trás, para que o usuário não possa fazer mais nada, a não se esperar.
Como é um JDialog, eu coloquei o setModal(true), mas quando está true, não gera o meu relatório até eu fechar o JDialog!
Até que eu feche o JDialog, o relatório não é gerado!

Alguma idéia???

Obrigado.

É isso mesmo que tem de ocorrer. Se não quiser que isso ocorra, ponha a parte de geração do relatório em uma thread separada, para que possa ser controlada de outra forma (como é que você vai fazer isso é por sua conta e risco.)

Já tenho uma thread para controlar a geração do relatório como mostra este tópico: http://www.guj.com.br/posts/list/118654.java
Você faz idéia de como fazer essa “comunicação” com o JDialog? :slight_smile:
Obrigado.

Você pode criar um botão do JDialog que não feche o JDialog, apenas interrompa o processamento da thread.
Para interromper o processamento, o correto é setar um flag na classe que representa a thread.
A thread, quando estiver processando o seu relatório, deve ficar checando periodicamente esse flag.

Não existe nenhum outro recurso para fazer isso não?
Não precisa ser JDialog, só preciso que a tela de trás fique desabilitada para clique!

Valeu!!