Domanda

Sto cercando di determinare quando un NSOpenPanel sta chiudendo prima che si chiuda in realtà. Ho bisogno di fare questo in modo da posso sovrapporre un'altra finestra con uno screenshot del pannello aperto su di esso di essere animato. Purtroppo, tutte le notifiche che ti sembra di essere in grado di accedere sembrano al fuoco dopo che la finestra è già stato chiuso. Questo porta ad una balbuzie stridente prima di iniziare la transizione.

Ho provato:
- utilizzando metodi delegato NSWindow sul pannello aperto (a quanto pare, nessuno dei metodi delegato NSWindow funziona)
- gruppo di monitoraggio: userEnteredFilename: confermata: (non chiamato)
- mostra la finestra di dialogo con una richiamata (callback accade dopo che il pannello scompare)

È stato utile?

Soluzione 2

Un altro modo per gestire questa situazione è stato quello di guardare attraverso subviews di NSOpenPanel per il pulsante Annulla e scambiare se stessi in quanto l'obiettivo / azione. Questo è quello che ho finito per fare.

Altri suggerimenti

Si dovrebbe registrare il controller come delegato del pannello aperto e quindi implementare il metodo -panel:isValidFilename: delegato. Questo metodo sarà chiamato poco prima che la finestra aperta si chiude.

Si dovrebbe tornare YES dal metodo se si desidera solo la notifica. Tornando NO consente di impedire la finestra di dialogo aperta da essere chiuso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top