Шаг 67.
Редактор Resource Workshop.
Задание клавиш акселераторов

    На этом шаге мы рассмотрим задание клавиш акселераторов.

    Для задания клавиш акселераторов нужно задать необходимую комбинацию в поле Key.

    Заданный акселератор должен согласовываться с акселераторами других стандартных программ Windows, поэтому не нужно использовать стандартный комбинации, такие как Ctrl+Esc.

    Значения клавиш можно задавать в двух режимах - ручном и режиме значения клавиши.

Ручной режим

    Если для позиционирования в поле Кеy вы используете мышь, или если нажали клавиши Alt+Еsс для выхода из режима значения клавиши, то находитесь в ручном режиме.

    В ручном режиме нужно непосредственно вводить всю информацию, необходимую для представления клавиши. Вы должны определить, является ли эта клавиша клавишей ASCII или виртуальной клавишей, и ввести ее в корректном формате. Если это виртуальная клавиша, вам потребуется знать корректный идентификатор Windows и ввести его буквами в верхнем регистре. Нужно также выбрать соответствующий параметр группы Кеy Тyре, то есть ASCII или Virtual Кеy.

    Если вы хотите использовать комбинацию клавиши Alt и клавиши ASCII, нужно установить параметр Alt. Чтобы использовать сочетание клавиши Alt, Сtrl и Shift с виртуальной клавишей, нужно установить один или более параметров, cвязанных с данными модификаторами.

    Например, для задания в качестве клавиши акселератора Alt+F3 можно набрать в текстовом поле Кеy VK_F3 (убедитесь, что буквы вводятся в верхнем регистре), и выбрать параметры (кнопки с независимой фиксацией) Virtual Кеy и Alt.


Рис.1. Задание виртуальной клавиши

    Для задания в качестве акселератора Alt+Сtrl+F наберите "^F" или "^f" (в комбинации с клавишами Alt и Сtrl регистр не различается) и установите параметры ASCII и Alt.


Рис.2. Задание клавиши ASCII

Режим значения клавиши

    Перейти в режим значения клавиши можно позиционируясь с помощью клавиши Таb в текстовом поле Кеy или с помощью выбора команды Aссеlerator | Кеy Value (Акселератор | Значение клавиши). О переходе в данный режим вы можете узнать, когда окно схемы выводится серым цветом, и в нем выводится следующее сообщение: "Use the Keyboard to select a key. Click the mouse or press Alt+Esc when done." ("Для выбора клавиши используйте клавиатуру. При завершении щелкните кнопкой мыши или нажмите клавиши Alt+Еsc").

    В режиме значения клавиши редактор акселераторов делает за вас большую часть работы. Любая клавиша или комбинация клавиш, которые вы нажимаете, выводятся в текстовом поле Кеy в качестве акселераторов. Редактор акселераторов определяет, является ли эта клавиша клавишей ASCII или виртуальной клавишей, и устанавливает соответствующие параметры группы Modifiers.

    Например, если вы в режиме значения клавиши нажимаете Alt+F3, то редактор акселераторов вводит VК_F3 и устанавливает кнопки с независимой фиксацией Virtual Кеy и Alt.

    Если вы нажимаете в режиме значения клавиши Alt+Сtrl+F, редактор акселераторов выводит в поле Кеy "F" и устанавливает кнопки с независимой фиксацией (параметры) Virtual Кеy, Ctrl и Alt.


Рис.3. Задание Alt+Сtrl+F

Инвертирование

    Windows имеет встроенную функцию, которая отмечает команду меню, когда пользователь нажимает клавиши акселератора для команды, связанной с командой меню.

    Например, если вы используете прикладную программу Windows WordPad (Текстовый редактор), и у вас выделен блок текста, нажатие клавиши Shift+Insert (эквивалент выбора команды Еdit | Insert Редактирование | Вставить) приводит к тому, что Windows временно инвертирует команду Еdit в строке меню. Данное средство позволяет пользователю определить, какое меню включает клавишу акселератора.

    Средство инвертирования (которое называется также инвертированием элемента меню) при создании акселератора по умолчанию включено. Вы можете запретить данное средство, отменив параметр Invert Menu Item (Инвертирование элемента меню) в диалоговом окне редактора акселератора.

    На следующем шаге мы рассмотрим перемещение, удаление и редактирование записи ресурсов для таблиц акселераторов.




Предыдущий шаг Содержание Следующий шаг