winuser.h

ACCELERATORS

La sentencia ACCELERATORS define uno o más aceleradores para una aplicación. Un acelerador es una pulsación de tecla definida por la aplicación para proporcionar al usuario una forma rápida de realizar una tarea. la función TranslateAccelerator se usa para traducir mensaje de acelerador desde la cola de mensajes de la aplicación a mensajes WM_COMMAND o WM_SYSCOMMAND.

Definición

acctablename ACCELERATORS
[sentencias-opcionales]
BEGIN
    event, idvalue, [type] [options]
    . . .
END

Descripción

acctablename: especifica bien un nombre único o un valor entero sin signo de 16 bits que identifica el recurso.

sentencias-ocpionales: ninguna o más de las siguientes sentencias:

Sentencia Descripción
CHARACTERISTICS dword Información definida por el usuario sobre un recurso que puede ser usado por herramientas que lean o escriban ficheros de recursos.
LANGUAGE language, sublanguage Especifica el lenguaje del recurso. Los parámetros son constantes de WINNLS.H.
VERSION dword Número de versión definida por el usuario, del recurso que puede ser usado por herramientas que lean o escriban ficheros de recursos.

event: especifica la combinación de teclas para usar como acelerador. Puede ser uno de los siguientes tipos de caracteres:

"char": un único carácter encerrado entre comillas dobles. El carácter puede estár precedido por el símbolo (^), que significa que se trata de un carácter de control.

Carácter: un valor entero que representa un carácter. El parámetro type debe ser ASCII.

Carácter de tecla virtual: un valor entero que representa una tecla virtual. La tecla virtual para teclas alfanuméricas puede ser especificada situando la letra en mayúscula o número entre comillas dobles (por ejemplo, "9" o "C"). El parámetro type debe ser VIRTKEY.

idvalue: especifica un valor entero sin signo de 16 bits que identifica el acelerador.

type: sólo es necesario si el parámetro event es un carácter o un carácter de tecla virtual. El parámetro type especifica los valores ASCII o VIRTKEY; el valor entero de event se interpreta de acuerdo a ese valor. Si se especifica VIRTKEY y event contiene una cadena, event debe estar en mayúsculas.

options: especifica las opciones que definen el acelerador. Este parámetro puede ser uno o más de los siguientes valores:

NOINVERT: especifica que no hay activo un ítem de menú de mayor nivel cuamdo el acelerador es usado. Esto es frecuente cuando se definen aceleradores para acciones como desplazamientos que no corresponden con un ítem de menú. Si se omite NOINVERT, debe estar activo un ítem de menú de mayor nivel (si es posible) cuando se use el acelerador.

ALT: hace que el acelerador se active sólo si la tecla ALT está pulsada.

SHIFT: hace que el acelerador se active sólo si la tecla Mayúsculas está pulsada.

CONTROL: define el carácter como un carácter de control (el acelerador sólo se activa si la tecla de Control está pulsada). Esto tiene el mismo efecto que usar el símbolo (^) antes del carácter acelerador en el parámetro event.

Las opciones ALT, SHIFT y CONTROL se aplican sólo a teclas virtuales.

Ejemplo

El ejemplo siguiente demuestra el uso de teclas aceleradoras:

1 ACCELERATORS
BEGIN
  "^C",  IDDCLEAR         ; control C
  "K",   IDDCLEAR         ; shift K
  "k",   IDDELLIPSE, ALT  ; alt k
  98,    IDDRECT, ASCII   ; b
  66,    IDDSTAR, ASCII   ; B (shift b)
  "g",   IDDRECT          ; g
  "G",   IDDSTAR          ; G (shift G)
  VK_F1, IDDCLEAR, VIRTKEY                ; F1
  VK_F1, IDDSTAR, CONTROL, VIRTKEY        ; control F1
  VK_F1, IDDELLIPSE, SHIFT, VIRTKEY       ; shift F1
  VK_F1, IDDRECT, ALT, VIRTKEY            ; alt F1
  VK_F2, IDDCLEAR, ALT, SHIFT, VIRTKEY    ; alt shift F2
  VK_F2, IDDSTAR, CONTROL, SHIFT, VIRTKEY ; ctrl shift F2
  VK_F2, IDDRECT, ALT, CONTROL, VIRTKEY   ; alt control F2
END