Создание таблицы клавиш-ускорителей


Чтобы создать таблицу клавиш-ускорителей для приложения, требуется сделать несколько шагов. Сначала, используется компилятор ресурса, чтобы создать ресурс таблицы клавиш-ускорителей и добавить их к исполняемому файлу приложения. Во время выполнения программы,  чтобы загрузить таблицу клавиш-ускорителей в память и извлечь данные о её дескрипторе, используется функция LoadAccelerators. Этот дескриптор передается в функцию TranslateAccelerator, чтобы активизировать таблицу оперативных клавиш.

Таблица оперативных клавиш может также создаваться для приложения и во время выполнения программы, путем передачи массива структур ACCEL в функцию CreateAcceleratorTable. Этот метод поддерживает определяемые пользователем ускорители в прикладной программе. Подобно функции LoadAccelerators, CreateAcceleratorTable возвращает дескриптор таблицы клавиш-ускорителей, который может передаться в TranslateAccelerator, чтобы активизировать таблицу оперативных клавиш.

Система автоматически уничтожает таблицы клавиш-ускорителей, загруженные LoadAccelerators. Однако, таблица, созданная CreateAcceleratorTable должна разрушиться прежде, чем приложение закроется; в противном случае, она продолжает существовать в памяти и после того, как приложение закрылось. Таблица клавиш-ускорителей разрушается при помощи вызова функция DestroyAcceleratorTable.

Существующая таблица клавиш-ускорителей может копироваться и изменяться. Существующая таблица копируется, используя функцию CopyAcceleratorTable. После того, как копия будет модифицирована, дескриптор новой таблицы оперативных клавиш извлекается при помощи вызова CreateAcceleratorTable. Наконец, дескриптор передается в TranslateAccelerator, чтобы активизировать новую таблицу.

Назад в оглавление
На главную страницу

Hosted by uCoz