Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171

    [java] Jframe che chiude tutta l'applicazione

    Ho creato un jframe principale, dopodichè con un menu è possibile aprire delle finestre per settare delle modifiche(tipo lingua,etc.). Quando chiudi la finestra delle opzioni cliccando sulla x mi si chiude tutta l'applicazione. Che metodo devo usare per far chiudere solamente la finestrella e non tutto?
    Grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    160
    che strano...hai messo un listener che da System.exit?
    Come operazione di chiusura di default metti DISPOSE_ON_CLOSE oppure cattura windowclosing e metti this.dispose().

  3. #3
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    perfetto. Dispose è più che sufficiente!
    Grazie.

    Sai risolvermi anche un altro problemino?
    vorrei che la finestra aperta rimanesse in primo piano e che fino alla sua chiusura non sia possibile interagire con la finestra principale. Grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    160
    devi creare una dialog modale al posto di un jframe.
    Documentazione e tutorial della sun.

  5. #5
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    grazie!

  6. #6
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    ho guardato un po la documentazione, ma non ci capisco molto.

    io vorrei curare bene la grafica all'interno delle finestre inserendo icone, campi di input , output e più di un pulsante.
    è possible farlo con un dialog modale?

    non c'è proprio una riga di codice o un flag da spuntare per impedire l'accesso alla finestra principale mentre è aperta una finestra secondaria?

    esiste un flag per tenerla in primo piano, magari ne esiste uno anche per questo..........

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,303
    Per le Dialog modali devi guardare la documentazione della classe JDialog. Basta settare un flag...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    ok, perfetto.

    fatto. ciao e grazie!

  9. #9
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    scusa se ti disturbo ancora, ma c'è un modo per fare in modo che la finestra "satellite" ritorni un dato alla finestra principale ?

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,303
    Certo.
    Devi prevedere una meccanismo di questo tipo:

    Nella finestra satellite predisponi un metodo boolean che ritorna vero se la finestra è stata chiusa correttamente (diciamo, premendo il pulsante OK, che conferma i dati inseriti), falso altrimenti (chiusura con la X o tramite pulsante "Annulla"). Alla chiusura non deve essere distrutta la finestra (niente dispose(), ma solo un hide())

    Nella finestra chiamante, crei un'istanza della JDialog (che se è modale, blocca l'esecuzione nel punto in cui è stata creata). Successivamente testi il valore restituito dal metodo previsto precedentemente. Se tale metodo restituisce vero, allora vai a prelevare i dati (utilizzando altri metodi nella classe JDialog che restituiscono tutto ciò che è necessario).

    Alla fine (sia che il metodo abbia restituito true, sia che abbia restituito false), chiami un altro metodo previsto nella JDialog che forza un dispose().


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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 © 2024 vBulletin Solutions, Inc. All rights reserved.