Mangiare Senza Glutine disponibile su App Store

Per altre informazioni scrivi a fabriziocaldarelli@negusweb.it

JFrameModale: Come rendere modale un JFrame

Da Programmazione Software.


Descrizione

JFrameModale estende JFrame aggiungendo la funzionalità "modale". Per funzionalità "modale" intendo la capacità di bloccare il focus (mouse ed evento chiusura window) sull'ultima finestra aperta con questa modalità. Esiste già la classe JDialog che dispone del metodo setModal per impostare la modalità modale. Ma questa classe presenta il limite della mancanza del pulsante di ridimensionamento, che nelle applicazioni comuni è particolarmente usato. Per rendere un JFrame modale basta impostare una propria classe che estende EventQueue per rintracciare messaggi di sistema (MouseEvent, WindowEvent) indirizzati ad una finestra che non è quella desiderata e non inviarli alla finestra destinatario. Questo è il compito della classe CFrameEventQueue del seguente codice sorgente. Bisogna ricordarsi, infine, di reimpostare la coda degli eventi, facendo un pop del gestore corrente. Per questo ho fatto un ovverride del metodo dispose() per poter chiamare il metodo pop del nuovo gestore della coda.


Allegati