Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    17

    [JAVA]problema addWindowListener

    Salve a tutti , da poco utilizzo java.swing e vorrei riuscire a capire come funzionano i Listener.

    In pratica ho una classe che crea un login form(jframe1) , appena inserito utente e pass si apre un altro JFrame2 implementato in un altra classe. Quando questo JFrame si apre vorrei disabilitare il bottone di login(o tutta la finestra con .setEnabled)nel Jframe1 e per disabilitare nessun problema lo faccio dopo aver creato il JFrame2, il problema è che vorrei si riattivasse appena chiudo la finestra JFrame2, quindi un WindowListener, ma proprio non ci riesco.

    ho provato a scrivere nel JFrame1

    codice:
    JFrame JFrame2= new nomeclasseJFrame2();
    JFrame.addWindowListener(new WindowAdapter() 
                                                   {
                                                       @Override
                                                   public void windowClosing(WindowEvent e)
                                                   {
                                                       System.out.println("ciao");
                                                       
                                                   }
                                                   });
    ma quando premo la X del JFrame 2 non viene visualizzato "ciao". Soluzioni?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    17
    Forse mi sono spiegato male, Riformula la domanda?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    17
    vi riporto un esempio di codice, che sto usando per capire i WindowListener
    codice:
    package provajframe;
    
    
    import java.awt.Button;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    
    
    
    
    public class ciao extends JFrame implements ActionListener
    { 
        
                JButton c = new JButton("hello");
                JButton b = new JButton("ciao");
        ciao(){
              
              JFrame f = new JFrame();  
              f.setTitle("ciao");
              f.setSize(200,200);
              f.setDefaultCloseOperation(f.EXIT_ON_CLOSE);
              f.setVisible(true);
              
              c.addActionListener(this); 
              b.addActionListener(this); 
              f.add(b);
              f.add(c);
              f.setLayout(new FlowLayout());
             }
           
       
                
        
    
    
    
    
        @Override
        public void actionPerformed(ActionEvent e)
        {
            
            
            if(e.getSource()==c)
            {
            JFrame p = new prova(); 
            c.setEnabled(false);
            p.addWindowListener(new WindowAdapter() 
            {
                public void WindowClosing(WindowEvent e)
                {
                   System.out.println("seeeeeeeee"); 
                }
            });
            } 
          
            if (e.getSource()==b)
            {
            System.out.println("booooooooooo");
            }      
        }
    
    
    }
    il JFrame prova() è una semplice finestra che si apre appena clicco sul bottone hello, ora vorrei che quando quella finestra si apre , il bottone hello si disabiliti in modo da non creare altri JFrame prova() quindi all'apertura disabilito il bottone con
    codice:
    c.setEnabled(false)
    , e appena clicco sulla X della finestra prova() vorrei che il bottone si riabilitasse. Per prova ho messo una System.out.println("seeeeeee") per vedere se entra, ma quando chiudo quella finestra non compare la System. Perchè?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.