[RESOLVIDO] Dúvida - Deixando o JFrame "inativo" - enable(false)

5 respostas
Conrado_Andrade

Galera, é o seguinte: Eu tenho um JFrame Principal e alguns Menus que chamam outros JFrames. Ao abrir um novo JFrame eu gostaria que o principal ficasse "inativo" - enable(false) - e quando o JFrame que abriu em cima do Principal fosse fechado o Principal ficaria "enable(true)".

[img]http://lh6.ggpht.com/_mgHkRN4JtR8/TPQ9ak9zeXI/AAAAAAAAB5w/WAUJ8T2E5FU/s720/print.JPG[/img]

Eu fiz o seguinte no JFrame Principal:

private void MenuItemCadLeitoresActionPerformed(java.awt.event.ActionEvent evt) {                                                    
        new CadastroLeitores().setVisible(true);
        this.setEnabled(false);

E no JFrame CadastroLeitores:

private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) {                                            
        this.dispose();

        Principal pr = new Principal();
        pr.setEnabled(true);

Mas quando o JFrame que abriu em cima do Principal (no caso o CadastroLeitores) é fechado o Principal continua "enable(false)".

Se alguem puder ajudar eu ficaria grato! Valeu!

5 Respostas

Eric_Yuzo

O ideal é que apenas a tela principal seja implementada em um JFrame. Implemente sua tela de cadastro de leitores em um JDialog. Assim pode deixá-lo como modal, o que vai ter o efeito que você deseja.

Queops82

Deixa ver se eu entendi, você quer que o JFrame que se encontra atras não possa clicar em nenhum botão e nem outra coisa e isso que você pretende fazer?^

Pois Bem isso e Simples basta você usar JDialog em vez de JFrame, ele te resolverá esse seu problema, foi assim que eu fiz quando tive o mesmo problema que vc tem agora.

Qualquer duvida posta ai

Conrado_Andrade

Valeu! Vou tentar aqui. Qualquer duvida volto a postar!

Eric_Yuzo

Uma dica: Se você estiver usando editor de telas do NetBeans, você pode criar um formulário JDialog, copiar todos os componentes do seu JFrame e colar no forrmulário JDialog. Se estiver fazendo as telas na mão, você pode adicionar os componentes da mesma forma que é feito no JFrame, no contentPane.

Qualquer dúvida posta aí.

Conrado_Andrade

VALEU GALERA! Vcs são demais!

Criado 29 de novembro de 2010
Ultima resposta 30 de nov. de 2010
Respostas 5
Participantes 3