Apertura secondo frame da un frame madre

di il
8 risposte

Apertura secondo frame da un frame madre

Ho un frame madre da cui vorrei aprire con un button un frame secondario senza che quello madre si chiuda(nel frame secondario do dei dati che poi si salvano in un database).
una volta inseriti i dati nel frame secondario vorrei chiudere solamente questo frame secondario e non tutti e due.
Vi posso chiedere un qualche esempio base, di apertura e chiusura di questo frame secondario.
Grazie in anticipo

8 Risposte

  • Re: Apertura secondo frame da un frame madre

    kerikcos ha scritto:


    Ho un frame madre da cui vorrei aprire con un button un frame secondario senza che quello madre si chiuda(nel frame secondario do dei dati che poi si salvano in un database).
    una volta inseriti i dati nel frame secondario vorrei chiudere solamente questo frame secondario e non tutti e due.
    Vi posso chiedere un qualche esempio base, di apertura e chiusura di questo frame secondario.
    Grazie in anticipo
    Intanto precisa cosa intendi per "frame". Il Frame di AWT? Il JFrame di Swing? Altro framework?

    Se intendi JFrame, in generale la chiusura di un frame (da pulsantino 'x', programmaticamente o in altro modo) coinvolge SOLO quello, mai altri. L'unico caso in cui più finestre si chiudono automaticamente è se su un certo JFrame è impostato il default close operation a EXIT_ON_CLOSE ... che termina la applicazione e quindi ovviamente di conseguenza chiude tutti i frame.
  • Re: Apertura secondo frame da un frame madre

    Si si, intendo Jframe, e mi capita proprio questo, cioè che quando premo la x mi si chiude tutta l' applicazione.
    vorrei che sia con la "x" che con un button si chiudesse soltanto il Jframe2
  • Re: Apertura secondo frame da un frame madre

    kerikcos ha scritto:


    Si si, intendo Jframe, e mi capita proprio questo, cioè che quando premo la x mi si chiude tutta l' applicazione.
    vorrei che sia con la "x" che con un button si chiudesse soltanto il Jframe2
    Ripeto: prima va visto il "default close operation" (get/setDefaultCloseOperation)
  • Re: Apertura secondo frame da un frame madre

    Adesso ho questo:
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    come dovrei cambiarlo ?
  • Re: Apertura secondo frame da un frame madre

    kerikcos ha scritto:


    Adesso ho questo:
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Appunto ... termina la applicazione e chiude tutto.

    kerikcos ha scritto:


    come dovrei cambiarlo ?
    Hai guardato la documentazione javadoc di setDefaultCloseOperation
    ?
  • Re: Apertura secondo frame da un frame madre

    Ciao, mi raccomando segui il consiglio di guardare la documentazione, è fondamentale quando si è agli inizi e utile anche dopo.
    Guarda per setDefaultCloseOperation, ma abituati ad usarlo in generale.

    Altra considerazione : una volta aperto il secondo frame vuoi che il primo rimanga selezionabile ? Di solito si sconsiglia questo approccio (vedi ad esempio qui: http://stackoverflow.com/questions/9554636/the-use-of-multiple-jframes-good-or-bad-practice) e si preferisce utilizzare delle finestre di dialogo modali, in particolare JDialog (se vuoi avere libertà di personalizzare la finestra) o JOptionPane (se ti basta scegliere tra qualche finestra modale predefinita).
    Puoi anche dare un'occhiata al tutorial ufficiale: http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html
  • Re: Apertura secondo frame da un frame madre

    Ok grazie mille .
    effettivamente ho risolto utilizando HIDE_ON_CLOSE .
  • Re: Apertura secondo frame da un frame madre

    Ok, anche se personalmente ti consiglierei DISPOSE_ON_CLOSE per le finestre che vuoi chiudere senza far terminare l'applicazione.
    L'HIDE_ON_CLOSE non "distrugge" il frame quindi, a meno che tu non chiuda un altro frame in modalità EXIT_ON_CLOSE, la tua applicazione rimarrà in esecuzione fino a quando non la blocchi dal prompt dei comandi o dalla gestione delle risorse; la cosa non è particolarmente piacevole...
Devi accedere o registrarti per scrivere nel forum
8 risposte