TURBO PASCAL

Новости       

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности 

Гостевая книга

Спонсор

От автора

Глава 6. Создание акселераторов 

Акселератор - это оперативная клавиша или комбинация клавиш, которые пользователь нажимает для выполнения вашей прикладной программой какого-либо действия. Он заменяет команду меню и, ана- логично команде меню, создает сообщение WM_COMMAND или WM_SYSCOMMAND, которое указывает прикладной программе, что делать дальше.

Обычно акселераторы создаются для дублирования команд всплы- вающих меню. Например, если вы откроете в большинстве прикладных программ Windows меню Edit (Редактирование), то увидите следующие акселераторы: Shift+Del (команда Cut), Shift+Ins (команда Paste) и Ctrl+Ins (команда Copy).

           Примечание: Подробнее об использовании акселераторов с
      командами меню рассказывается в Главе 5.

              +-----------------------------------+
              ¦___________________________________¦
              +-----------------------------------¦
              ¦ Cut                 Shift+Del     ¦
              ¦ Copy                Ctrl+Ins      ¦
              ¦ Paste               Shift+Ins     ¦
              +-----------------------------------¦
              ¦ Clear                             ¦
              ¦ Delete                            ¦
              +-----------------------------------+

     Рис. 6.1 Окно Edit с акселераторами

     Определения акселераторов записываются в таблице акселерато-
ров (ресурс  акселератора).  Каждая запись в таблице представляет
собой акселератор,  определяющий сочетание клавиш, которые должен
нажать пользователь для генерации команды.  При желании вы можете
создать несколько таблиц акселераторов (или ресурсов) для различ-
ных частей меню.
Пакет разработчика ресурсов предоставляет вам редактор аксе- лераторов, который облегчает создание и редактирование акселера- торов для прикладной программы. При работе с акселераторами вы- полняются следующие основные задачи: - запуск редактора меню; - запуск редактора акселераторов; - настройка таблицы акселераторов и проверка на дублирование клавиш; - сохранение таблицы акселераторов. Первая задача, запуск редактора меню, выводит связанное с меню акселераторы, с которыми вы можете работать. Вторая задача, запуск редактора акселераторов, позволяет вывести таблицу акселе- раторов, которую вы можете настроить. Третья задача, сохранение акселераторов, выполняется автоматически при сохранении проекта.

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

Если вы откроете демонстрационный проект RWPDEMO.RC и дважды щелкните кнопкой "мыши" на ресурсе акселератора. Пакет разработ- чика ресурсов выводит следующую таблицу:

+---------------------------------------------------------------+
¦ - ¦              ACCELERATORS: acc_Main               ¦ ^ ¦ v ¦
+---------------------------------------------------------------¦
¦+-------------------------------+ ¦         acc_Main         ¦^¦
¦¦ Command                       ¦ +--------------------------+-¦
¦¦+-------------++--------------+¦ ¦_VK_BACK 24325____________¦_¦
¦¦¦             ¦¦ 24325        ¦¦ ¦ VK_DELETE 24320          ¦_¦
¦¦+-------------++--------------+¦ ¦ VK_INSERT 24321          ¦_¦
¦+-------------------------------+ ¦ VK_INSERT 24322          ¦_¦
¦+-------------------------------+ ¦ VK_F1 141                ¦_¦
¦¦ Key                           ¦ ¦ VK_F2 142                ¦_¦
¦¦+-------------+                ¦ ¦                          ¦_¦
¦¦¦ VK_BACK     ¦                ¦ ¦                          ¦_¦
¦¦+-------------+                ¦ ¦                          ¦_¦
¦+-------------------------------+ ¦                          ¦_¦
¦+-------------------------------+ ¦                          ¦_¦
¦¦ Key type                      ¦ ¦                          ¦_¦
¦¦                               ¦ ¦                          ¦_¦
¦¦   > Ascii      <* Virtual key ¦ ¦                          ¦_¦
¦¦                               ¦ ¦                          ¦_¦
¦+-------------------------------+ ¦                          ¦_¦
¦+-------------------------------+ ¦                          ¦_¦
¦¦ Modifiers                     ¦ ¦                          ¦_¦
¦¦                               ¦ ¦                          ¦_¦
¦¦  V¦ Ascii  ¦ Shift  ¦ Control ¦ ¦                          ¦_¦
¦¦  -+       -+       -+         ¦ ¦                          ¦_¦
¦¦     V¦ Invert menu item       ¦ ¦                          ¦_¦
¦¦     -+                        ¦ ¦                          ¦_¦
¦+-------------------------------+ ¦                          ¦_¦
¦                                  ¦                          +-¦
¦                                  ¦                          ¦v¦
+---------------------------------------------------------------+
Риc. 6.2 Таблица акселераторов RWPDEMO в редакторе акселера- торов

Command - команда; Key - клавиша; Key type - тип клавиши; Ascii - клавиша с кодом Ascii; Virtual key - виртуальная клавиша; Modifiers - модификаторы; Invert menu item - инвертирование эле- мента меню.

На первую страницу

Rambler's Top100 PROext: Top 1000
Rambler's Top100

(с) Все права защищены.

По всем интересующим вопросам прошу писать электронный адрес

Hosted by uCoz