Come posso mettere in pausa la mia applicazione quando apro il JDialog personalizzato e dopo che la finestra di dialogo è chiusa per continuare di nuovo.Come sospendere l'esecuzione mentre JDialog è aperto
risposta
utilizzare semplicemente:
setModal(true);
Io di solito lo chiamo dall'interno del costruttore della JDialog
.
Vedere i Javadoc su setModal(boolean)
.
http://java.sun.com/javase/6/docs/api/java/awt/Dialog.html#setModal(boolean)
Ciò causerà l'esecuzione del blocco sul thread corrente fino alla chiusura della finestra di dialogo.
In alternativa, è possibile utilizzare:
setModalityType(Dialog.DEFAULT_MODALITY_TYPE);
È equivalente a setModal(true)
e tecnicamente il modo corretto per farlo.
vedere il costruttore di JDialog http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JDialog.html#JDialog(java.awt.Dialog,%20java.lang.String,%20boolean). È possibile impostare la modalità di questa finestra di dialogo. L'impostazione modal = true interromperà l'applicazione. è anche possibile utilizzare il metodo 'setModal' http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Dialog.html#setModal(boolean)
Questi commenti/risposte non dicono dove il codice si fermerà. Quel punto può essere importante sapere. – NormR
Penso che è necessario per definire ulteriormente "pausa". Intendi che vuoi che l'interfaccia utente smetta completamente di rispondere? Vuoi dire che vuoi mettere in pausa qualche altro thread in esecuzione? – Jared