Quero que seja Não-Modal, como fazer?

4 respostas
I

E aí galera… Eu fiz um menu TreeView para integrar com outros programas, esses outros programas não foram feitos por mim, mas o caso é que toda vez que um programa é selecionado no Treeview, ele abre a tela de destino MODAL… Não consigo mais voltar ao meu menu para abrir outros programas. Alguém tem idéia de como fazer que a minha aplicação não seja modal? Em nenhum momento defini que ela seria modal.

Estou utilizando JFrame e JTree

Estou colocando a parte do código que chama a classe de destino.

String[] agr0 = new String[] {UsrCod,Jar,tela};
String classname = "ProgMain";

try {
	URL url = new URL("file:/C:/ItlMenu/Menu/Programa.jar");
	URL[] urls = new URL[]{url};
	URLClassLoader loader = new URLClassLoader(urls);
	Class cls = loader.loadClass(classname);
	Class argClass = String[].class;
	Method mainMeth = cls.getMethod("main",new Class[]{argClass});	
	mainMeth.invoke(null, new Object[]{agr0});
	Object o = cls.newInstance();	
} catch (Exception e) {
	e.printStackTrace();
}

Falou
Neto

4 Respostas

keller

Sua outra classe extende a qual Classe?
JFrame? JDialog? JWindow?

Esse codigo é o que chama a sua outra classe?

valeu? até… :thumbup:

kinow

Você pode simplesmente matar o problema… estudando um pouco sobre modal, mas não se esqueça, há bugs no Java 1.4.2 , não sei se foram corrigidos já, mas haviam bugs com janelas Modal que não travavam apenas o Parent… de qualquer jeito, vou deixar um end que mudou minha vida hahaha, abraços.

https://jmodalwindow.dev.java.net/

Utilizo este código agora para tratar janelas modal, e quando não é modal, apenas utilizo um dialog com a propriedade modal negada, ou panel, por ae vai…

Abraços.

I

Essa código chama a outra classe… fiz pelo classloader, até mesmo pq as classes que eu chamo estão dentro de um JAR.

De qualquer forma eu já atualizei a versão do Java para 1.5.0 e vou ler a documentação JModalWindow.

Uma pergunta… pode ser o programa que estou chamando que está definido como modal e travando a minha aplicação?

Falou
Neto

keller

Sim se o programa que você estiver chamando estar
definido como modal provavelmente tu nao vai conseguir
colocar o foco novamente na sua aplicação.

valeu? até… :thumbup:

[]'s

Criado 27 de junho de 2005
Ultima resposta 28 de jun. de 2005
Respostas 4
Participantes 3