Não permitir abertura de um formulário JÁ aberto [não resolvido]

5 respostas
MrDataFlex

Jframe.

Alguem poderia me dizer, como faço para não permitir a abertura de um formulário ja aberto?

em tempo… o que seria em delphi

if (form_tal = nil) form_tal.create(self); form_tal.show;

abraços

5 Respostas

MrDataFlex

em tempo, eu tava fazendo algo… q nao funcionava mt bem, pois parece q o negocio não liberava corretamente da memoria…

if (f == null) form f = new form(); f.setVisible(true);

no close do form, estava para dar dispose…

acontece que qndo eu chamo o form de novo, ele volta com as msmas informacoes da ultima utilização ¬¬

abçs

celsofurtado

Tente o seguinte:

JFrame frame = new JFrame();
if (frame.isVisible()) {
  System.out.println("Janela já está aberta!");
}
else {
  frame.setVisible(true);
}

Espero ter ajudado.

Té mais.

MrDataFlex

valeu amigo,
mas ñ deu :frowning:

T

Amigo, aqui eu fiz essa classe para controlar as janelas abertas no programa que eu fiz.
segue a classe:

public class controlWindow {
    
    /** Creates a new instance of controlWindow */
   
    
    Object[] objeto;
    JMenuItem MenuItem;
    JButton button;
    JToggleButton toggleButton;
    boolean travado;
    
    
  
    public void travaComp(Object[] _obj){
        this.objeto = _obj;
        controlComp(false);
    }
    
    
    private void controlComp(boolean _travado){
            
        for(int i =0; i < this.objeto.length;i++){ 
        
            if(this.objeto[i].getClass().isInstance(new JMenuItem())){                

                MenuItem = (JMenuItem) this.objeto[i];
                this.MenuItem.setEnabled(_travado);

            } else if(this.objeto[i].getClass().isInstance(new JButton())){

               button = (JButton) this.objeto[i];
               this.button.setEnabled(_travado);
               
            } else if(this.objeto[i].getClass().isInstance(new JToggleButton())){
                
                toggleButton = (JToggleButton) this.objeto[i];
                this.toggleButton.setEnabled(_travado);
                
           }
        
       }
       
    }        
    
    
    
    public void destravaComp(){    
        
      controlComp(true);
      
    }         
    
    

}

ela funciona blz aqui comigo faz o que eu quero, não sei se vai ser bem o que vc quer mas qualquer coisa posta ae. flw

MrDataFlex

bsah,
axo q não eh bem isso que eu preciso,
mas valeu msmo assim…

Criado 9 de abril de 2007
Ultima resposta 9 de abr. de 2007
Respostas 5
Participantes 3