2010-11-13 29 views
15

Soy un gran fanático de los atajos de teclado. Si alguna función u operación no tiene acceso directo, tiendo a escribir un pequeño programa y adjuntar Ctrl + Alt + atajo [tecla] a él.Mejores prácticas para diseñar atajos de teclado

Ayer, al codificar con Visual Studio, comencé a pensar qué tan bien habían asignado los accesos directos. Hay una enorme cantidad de comandos y, sin embargo, la mayoría de ellos son intuitivos y ni uno solo se superpone con otra combinación de teclas de todo el sistema. La única excepción es Ctrl + W y me irrita que no cierre la pestaña activa de manera predeterminada como debería.

¿Cuáles son las mejores prácticas que se deben tener en cuenta al asignar atajos de teclado a los propios programas?

¿Cuáles son tan comunes y "reservado" combinaciones que no se deben utilizar aparte de la funcionalidad específica (eq Ctrl + S, Ctrl + W ....)

En pequeña aplicaciones Creo que es mejor usar Ctrl como una tecla modificadora, pero ¿qué tal en las más grandes? ¿Debería haber dos teclas modificadoras (Shift/Alt?) O hacer como en Visual Studio? Debe Shift ser utilizado sólo para las funciones de reenvío (Ctrl +Shift +Tab, lengüetas de desplazamiento hacia atrás)?

O qué tal cuando el programa se está ejecutando minimizado en la bandeja, o no tiene GUI en absoluto. ¿Debería usar Windows-key en esa combinación?

Respuesta

16
  • de inicio con los enlaces comunes de Windows: Ctrl +C para copiar, Ctrl +S para guardar, etc. Los usuarios no debería sorprenderse cuando tratan de cualquiera de estas teclas de acceso rápido más comunes .

  • Observe otras aplicaciones con funciones similares a las suyas. p.ej. si haces algo como procesamiento de texto (aplicando estilos de texto), entonces mira Word. Si tiene algo así como una herramienta de dibujo, tal vez consulte Photoshop, etc.

  • Haga una lista de todos los comandos que espera tener en su programa cuando esté "terminado". Esto puede ser mucho más de lo que está disponible ahora, y es posible que algunos de estos comandos nunca lleguen a existir, pero este ejercicio puede ayudarlo a evitar el cambio de teclas de acceso rápido con cada versión, reservándolas desde el principio.

  • Ahora, elimine de la lista todos los comandos que cree que no se usarán muchas veces al día. p.ej. Ctrl + C para "(C) opy" es bueno, porque puede usarse hasta 60 veces por hora. Pero Ctrl + C para "(C) heck si se ha lanzado una nueva versión" es una tecla de acceso rápido incorrecta, ya que es poco probable que los usuarios quieran hacer esto más de una vez a la semana o menos.

  • En caso de duda sobre la frecuencia con la que se usará una tecla de acceso directo, omítalo. Es mejor tener muchas claves adicionales disponibles para las funciones futuras que unir cada tecla del teclado y luego tener que seguir cambiando las ataduras. El uso de menos teclas de acceso rápido reduce la complejidad para el usuario, la cantidad de pruebas que debe realizar y la posibilidad de que una tecla perdida haga algo que el usuario no pretendía. Si los usuarios realmente desean una tecla de acceso rápido, la solicitarán y podrán agregarla. Pero, en general, solo las funciones realmente utilizadas necesitan teclas de acceso rápido.

  • Elabora una hoja de cálculo con letras para los modificadores. Ingrese el conjunto de comandos de alto uso esperado en esta cuadrícula y priorice cada celda para que los comandos más importantes utilicen el atajo de teclado más simple y más obvio. En muchos casos, encontrará que solo un comando cae en una tecla específica. Además, trate de comandos relacionados con el grupo en la misma tecla, pero con diferente (Ctrl/Shift/Alt) modificadores (por ejemplo Ctrl + S guardar, Ctrl + Shift + S Guardar -todas). Esto te dejará con cualquier comando que no se pueda asignar fácilmente a una clave obvia. Considere si cambiar el nombre de algunas opciones puede ayudar a cambiar las cosas para lograr un mejor mapeo (por ejemplo, sinónimos como "Opciones", "Configuración" o "Preferencias" pueden ayudarlo a encontrar nombres de comandos que se relacionen más fácilmente con una buena mnemotécnica)

  • Ahora le quedan comandos que no pueden vincularse a la clave más obvia (por ejemplo, "Cortar" no puede vincularse a Ctrl + C porque se utiliza para "Copiar", por lo que en los menús generalmente verlo limitado como Editar-> cu (T) y Editar -> (C) opy.Por lo que podría considerar el uso de Ctrl +T para mantener la coherencia con el enfoque mnemnomic menú (aunque en este caso en particular, no es por supuesto una norma preexistente, Ctrl +X = corte).

  • Agregue un sistema de enlace de teclas para que los usuarios puedan agregar/modificar teclas de acceso rápido para personalizar su interfaz de usuario.

  • Siempre que sea posible, intente ser consecuente. Como ha señalado, el cambio se usa a menudo para "invertir la dirección" de un comando de navegación. Al seleccionar, siga las convenciones de Windows (Ctrl para alternar, Shift para ampliar). Pero sobre todo, ser consistente a través de su aplicación - que en realidad no importa en la mayoría de los casos el efecto que Ctrl,Shift, y Shift +Ctrl tiene en una operación, pero si es posible tratar de aplicar una lógica similar a todos tus enlaces de comando.

  • Tenga cuidado al usar Alt como modificador. El usuario debe poder usar Alt para navegar en el sistema de menú. Así que en realidad sólo se debe utilizar Alt conjuntamente con Ctrl/Shift, y asegurarse de que su manejo tecla de acceso directo no se rompe la normalidad Alt manejo que ofrece el sistema de menús.

  • Si su programa tiene mucha entrada de texto, entonces evite usar las teclas no modificadas para las teclas rápidas. Es realmente molesto cuando presiona M para hacer algo y no solo eso no sucede, sino que aparece una M en un campo de entrada de texto en alguna parte aleatoria de tu UI. Que sea Ctrl +M o Ctrl +Shift +M y el problema se evita fácilmente. Esto también permite que las teclas rápidas activen comandos incluso mientras el usuario tiene su foco de entrada en un lugar específico, evitando cualquier modalidad desagradable.

  • Si usa secuencias de teclas múltiples, entonces no mezcle y combine los modificadores. Por ejemplo, ctrl + A, ctrl + B está bien, pero ctrl + A + B o ctrl + A, cambio + B son malo ya que el usuario tiene que liberar ctrl ctrl a la mitad de la secuencia. (¡Los comandos de prueba de Visual Studio, estoy hablando con usted!)

  • No haga cosas en las teclas de acceso rápido a menos que sea la aplicación de enfoque de entrada. p.ej.hay un cierto programa muy popular que (por defecto) toma Ctrl + A y por lo tanto hace algo extremadamente molesto cada vez que intentas seleccionar todo en un programa no relacionado. ¿¡Porque Oh porque!? Si cree que una tecla de acceso directo global es una gran idea, agréguela como una opción que los usuarios pueden activar si así lo desean, para que sepan que existe una tecla de acceso directo.

  • Estoy de acuerdo en que Visual Studio tiene un buen conjunto predeterminado de enlaces. Pero en muchos aspectos estuvo muy mal diseñado: VS2010 es la primera edición de VS que he utilizado y que no ha realizado cambios frustrantes de gran envergadura en las principales vinculaciones de teclas de la versión anterior. Esta suele ser la parte más dolorosa de la actualización a una nueva versión de VS. ¡Estaba muy contento y sorprendido de encontrar que las características más comunes (como "compilar") todavía estaban en las mismas teclas de acceso directo en VS2010! Espero que me quedo con ellos por un tiempo ...

2

accesos directos tienen que ser memorable, por lo que Ctrl + S (guardar) y Ctrl + N (nuevo) funcionan bien, algunos programadores han llevado tan lejos como cambiar los accesos directos en diferentes idiomas. (Ctrl + B para negrita era Ctrl + F para Fett en versiones antiguas de MS de escritura.) De manera similar, X se asemeja tijeras y V una marca de inserción, por lo tanto, cortar y pegar.

En un nivel más avanzado, prevenir los efectos accidentales que no se pueden deshacer: comandos más peligrosos necesitan guardias de seguridad más complejos: algo así como Ctrl +Alt +Del es bastante difícil de escribir de forma accidental.

También tenga en cuenta que Alt es la tecla de acceso al menú.

2

Una cosa más que no debe olvidarse: Ctrl +Alt +número/letra combinaciones de letras lo que deben evitarse ya que para muchos diseños de teclado hay una AltGr modificador teclado que también se desencadena por Ctrl + Alt.

E.g. para escribir el carácter @ en un teclado alemán, tendría que escribir AltGr +Q =Ctrl +Alt +Q

Más información: http://blogs.msdn.com/b/oldnewthing/archive/2004/03/29/101121.aspx