¿Cuándo pueden usar ESC para cerrar ventanas?

7

Por casualidad, noté el siguiente comportamiento:

Algunas ventanas se pueden cerrar presionando la tecla esc , como la ventana de Preferencias en cualquier aplicación o la ventana de 'Ayuda de Safari' o la ventana de 'Fuentes' en TextExit por ejemplo.

Otras ventanas no se pueden cerrar presionando la tecla esc , como la ventana del navegador Safari o la ventana 'Caracteres especiales'.

El cmd w predeterminado siempre funciona.

¿Cuál es la regla para las pulsaciones de teclas al cerrar ventanas? ¿Cuándo podemos usar esc ?

    
pregunta CousinCocaine 16.07.2014 - 17:06

2 respuestas

8

Lo que está viendo, es decir, el comportamiento donde la tecla Escape cierra la ventana, se integra automáticamente en la clase NSPanel , que es una subclase de NSWindow .

De Window Programming Guide > How Panels Work :

  

Un panel es un tipo especial de ventana, que sirve típicamente a un auxiliar   Funcionar en una aplicación. La subclase NSPanel de NSWindow agrega   Algunos comportamientos especiales para Windows en apoyo de los paneles de roles juegan:

     

...

     

• Si un panel es la ventana clave y tiene un botón de cierre, se cierra solo    cuando el usuario presiona la tecla Escape .

La ventana de preferencias (o panel) en muchas aplicaciones se implementa como NSPanel : por ejemplo, Safari, Vista previa, Terminal, Consola. El panel de Fuentes en las aplicaciones Cocoa se implementa como un NSPanel . Cuando elige Safari > Ayuda de Safari, en realidad inicia una aplicación de fondo invisible, HelpViewer.app (/System/Library/CoreServices/HelpViewer.app), cuya ventana principal se implementa como un NSPanel flotante. Por estas razones, esos paneles responderán a la tecla Escape al cerrar la ventana. Las ventanas generales estándar, que son instancias de NSWindow , no obtienen este comportamiento automáticamente, ya que solo los paneles deben comportarse de esa manera.

    
respondido por el NSGod 16.07.2014 - 22:13
7

Usando la tecla esc para cerrar un diálogo modal es generalmente lo mismo que presionar el botón Cancelar para el diálogo. Esto es similar a cómo presionar las teclas Return o Enter confirma la acción del botón resaltado.

Esto se encuentra en las Pautas de Interfaz Humana de Apple para Macintosh desde el principio y no es nuevo en OS X. La guía se puede encontrar aquí bajo el encabezado "Diálogos de descarte":

enlace

Busca "escapar" en esa página. La coincidencia es aproximadamente 3/4 de la página y es explícita sobre este comportamiento.

De las Directrices de interfaz humana:

  

En general, incluye un botón Cancelar. El botón Cancelar devuelve el   Computadora al estado en que estaba antes de que apareciera el diálogo. Significa   “Olvide que lo mencioné”. Además, asegúrese de que el atajo de teclado   El período de comando y la tecla Esc (Escape) se asignan a Cancelar   botón.

Otro comportamiento útil, es si un cuadro de diálogo acepta Return o Enter como parte de un campo de texto, muy a menudo, al presionar Command - Return presionará el botón predeterminado.

    
respondido por el Ɱark Ƭ 16.07.2014 - 17:49

Lea otras preguntas en las etiquetas