Estoy creando un selector de imágenes que mostrará una cuadrícula n por n del botón seleccionable cuando se abra el selector. Esta grilla de botones estará contenida dentro de una NSWindow, pero me gustaría que la ventana se cierre automáticamente si el usuario hace clic fuera de la pantalla. ¿Hay un indicador que se puede configurar para que cuando la ventana pierda el foco se cierre automáticamente?Cerrar mediante programación una ventana NSW cuando pierde el foco
5
A
Respuesta
8
Hay dos notificaciones que pueden interesarle: NSWindowDidResignKeyNotification
y NSWindowDidResignMainNotification
. Simplemente puede registrarse para el que le interesa en awakeFromNib (o windowDidLoad si tiene un controlador personalizado) y luego cierre u oculte la ventana según corresponda cuando reciba las notificaciones.
No voy a ahondar demasiado en si esta es una buena idea desde el punto de vista de la interfaz de usuario. Sin embargo, podría ser una mejor idea tener una vista de superposición o un panel para la funcionalidad que describes.
3
Puede consultar NSPanel. Es una subclase NSWindow que se ocultará cuando la aplicación está en segundo plano, y ese comportamiento suena muy similar a lo que está buscando.
Cuestiones relacionadas
- 1. ¿Es posible evitar mediante programación que un juego se detenga cuando su ventana pierde el foco?
- 2. WPF: detectar cuando la ventana pierde el foco
- 3. Cerrar mediante programación una aplicación de AIR
- 4. Ejecutar JavaScript cuando un elemento pierde el foco
- 5. TextBox - ¿Puedo mantener la selección resaltada cuando pierde el foco?
- 6. ¿Cómo guardar automáticamente en Vim 7 cuando se pierde el foco de la ventana?
- 7. Ocultar ul cuando pierde el foco en jQuery
- 8. Detectando cuando un iframe obtiene o pierde el foco
- 9. selección cambia de color cuando Firefox se pierde el foco
- 10. ¿Hay alguna forma de minimizar mediante programación una ventana?
- 11. Cómo cerrar una aplicación mediante programación cuando el usuario toca un botón
- 12. AutoPostback con TextBox pierde el foco
- 13. ¿Cómo cerrar el diálogo de mensaje mediante programación?
- 14. Deshabilitar el cambio de color cuando la lista de origen pierde el foco
- 15. ¿Cómo establecer el foco en otra ventana?
- 16. La ventana modal recién creada pierde el foco y se vuelve inaccesible en Windows Vista
- 17. WPF aplicación pierde por completo el foco en la ventana estrecha
- 18. ajustar el foco de una ventana emergente cada vez que
- 19. Cerrar sesión usuario de Win XP mediante programación en C#
- 20. ¿Cómo puedo saber cuándo un EditText pierde el foco?
- 21. ¿Cómo puedo saber cuándo NSTextView pierde foco?
- 22. ListView en SlidingDrawer pierde el foco después de onResume
- 23. Textarea pierde el foco en el clic del mouse?
- 24. ¿Cómo se produce un evento cuando el control de texto pierde el foco?
- 25. El menú contextual de la bandeja del sistema Qt permanece cuando la aplicación pierde el foco
- 26. Spy ++ y ventanas cerradas cuando pierden foco
- 27. Compruebe si la ventana está perdiendo el foco
- 28. Android: detectar cuando se inicia otra actividad (o su actividad pierde el foco)
- 29. Función de Jquery cuando un cuadro de texto pierde el foco
- 30. Vim: volver al modo de comando cuando se pierde el foco
La cuestión es cerrar la ventana cuando ** la ventana ** pierde el foco, sin embargo. 'NSPanel' se esconde cuando la ** aplicación ** pierde el foco. – Jay