Oi pessoal,eu estou com uma duvida,quero fazer com que a janela principal de minha aplicacao fique desabilitada se outra subjanela estiver aberta,porem nao estou conseguindo
Vamos supor que eu clico no botao para abrir o cadastro de clientes,ao clica a janela principal deve estar desabilitada,ou seja,ela nao pode estar habilitada para ser fechada,somente dps que eu fechar o cadastro de clientes q a aplicacao vai ser habilitada.Bom é isso
Controle de janelas
D
4 Respostas
Faz a janela principal “sumir” com um setVisible (false).
Passa ela como parametro pro construtor da outra janela…
E quando você fechar a outra janela, da um setVisible (true) na janela principal
acho q melhor seria usar setEnabled(false) uma vez que ele nao quer ocultar a janela e sim apenas desabilitá-la
Seria mais fácil se voce utilizasse um JDialog. Porque voce não precisaria ficar setando nem o visible nem o enabled no “braço”.
Dá uma pesquisada em JDialog, vai te ajudar muito.
Flw!
Se eu fosse voce eu receberia no construtor a instancia da janela pai e bloquea-se ela e quando fechar habilitala denovo
public ConstrutorFilha(JComponent pai){
this.pai = pai;
pai.setEnabled(false);
}
//Caso voce use o setVisible(false) apra sumir
@Override
public void setVisible(boolean aFlag){
super.setVisible(aFlag);
if(pai != null)//Necessario.. pois voce ainda poderia instanciar essa classe passando null como argumento caso não queira bloquear nenhuma outra janela
pai.setEnabled(true);
}
//Caso voce feche ela com o Dispose
@Override
public void dispose(){
super.dispose();
if(pai != null)//Vide explicação acima.
pai.setEnabled(true);
}
Criado 7 de dezembro de 2008
Ultima resposta 8 de dez. de 2008
Respostas 4
Participantes 5
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo