Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Таблица акселератора — это ресурс Windows C++, содержащий список ключей акселератора, известных как сочетания клавиш, и идентификаторы команд, связанные с ними. В программе можно использовать более одной таблицы ускорителей.
Обычно сочетания клавиш используются для ускорения доступа к командам программы, также доступным в меню или на панели инструментов. Но таблицу сочетаний клавиш можно также использовать, чтобы определить сочетания клавиш для команд, с которыми не связаны никакие объекты пользовательского интерфейса.
Совет
При использовании Редактора акселераторов щелкните правой кнопкой мыши, чтобы открыть контекстное меню частых команд. Доступные команды зависят от объекта, на который наведен указатель мыши.
Для подключения команд сочетаний клавиш к коду можно использовать представление классов . Список предварительно определенных ключей акселератора см. в разделе "Ключи акселератора".
Примечание.
Windows не позволяет создавать пустые таблицы акселераторов. Если вы создадите таблицу ускорителей, не содержащую записей, она будет автоматически удалена при сохранении.
Свойства акселератора
Свойства акселератора можно задать в окно свойств в любое время. Редактор акселераторов также можно использовать для изменения свойств акселератора в таблице акселераторов. Изменения, внесенные с помощью окна свойств или редактора акселератора, имеют одинаковый результат, изменения немедленно отражаются в таблице акселератора.
Свойство ID ссылается на каждую запись таблицы акселератора в коде программы. Эта запись представляет собой значение команды, которое программа получает, когда пользователь нажимает клавишу акселератора или сочетание клавиш. Чтобы сделать акселератор таким же, как элемент меню, сделайте идентификатор таким же, если идентификатор таблицы акселератора совпадает с идентификатором ресурса меню.
Каждый идентификатор акселератора имеет три свойства: модификатор, ключ и тип
Свойство Modifier задает сочетания клавиш управления для акселератора .
Примечание.
В окне "Свойства" свойство Модификатора отображается как три отдельных логических свойства, все из которых можно управлять независимо: ALT, CTRL и SHIFT.
Ниже приведены допустимые значения для свойства Modifier в таблице акселераторов:
| значение | Описание |
|---|---|
| Не допускается | Пользователь нажимает только клавишу. Это значение наиболее эффективно используется со значениями ASCII/ANSI 001–026, которые интерпретируются как ^A через ^Z (CTRL+A через CTRL+Z). |
| Alt | Пользователь должен нажать Alt перед вводом клавиши. |
| CTRL | Пользователь должен нажать Ctrl перед значением клавиши Key, недопустимым с типом ASCII. |
| SHIFT | Пользователь должен нажать клавишу Shift перед нажатием клавиши Key. |
| CTRL+ALT | Пользователь должен нажать клавиши |
| CTRL+SHIFT | Пользователь должен нажать клавиши Ctrl и Shift перед вводом значения ключа, недопустимого для ASCII-типа. |
| ALT+SHIFT | Пользователь должен нажать клавиши Alt и Shift перед значением Key, что недопустимо с типом ASCII. |
| CTRL+ALT+SHIFT | Пользователь должен нажать клавиши |
Свойство Key задает фактический ключ, используемый в качестве акселератора.
Ниже приведены допустимые записи для свойства Key в таблице акселератора:
| значение | Описание |
|---|---|
| Целое число от 0 до 255 в десятичном формате. | Значение определяет, обрабатывается ли значение как ASCII или ANSI следующим образом: — Однозначные числа всегда интерпретируются как соответствующий ключ, а не как значения ASCII или ANSI. — Значения от 1 до 26 при наличии ведущих нулей интерпретируются как ^A до ^Z, которые представляют значение ASCII букв алфавита при удержании клавиши Ctrl. — Значения от 27 до 32 всегда интерпретируются как трехзначные десятичные значения 027–032. — Значения от 033 до 255, предшествующие 0 или нет, интерпретируются как значения ANSI. |
| Один символ клавиатуры. | Верхний регистр A - Z или цифры 0 – 9 могут быть как значениями ASCII, так и значениями виртуальных клавиш. Любой другой символ может быть представлен только в кодировке ASCII. |
| Один символ клавиатуры в диапазоне A - Z (только в верхнем регистре), предшествующий курсору (^), например ^C. | Этот параметр вводит значение ASCII ключа при нажатии клавиши CTRL, удерживаемой нажатой. |
| Любой допустимый идентификатор виртуального ключа. | Раскрывающийся список "Ключ" в таблице акселератора содержит список стандартных идентификаторов виртуальных ключей. |
Примечание.
При вводе значения ASCII, параметры свойства Модификатор ограничены. Единственным ключом управления, доступным для использования, является клавиша ALT .
Совет
Для определения клавиши акселератора щелкните правой кнопкой мыши на одной или нескольких записях в таблице акселераторов, затем выберите Next Key Typed и нажмите любую клавишу или сочетание клавиш на клавиатуре.
Эта команда Next Key Typed также доступна в меню "Изменить ".
Свойство Type определяет, интерпретируется ли сочетание сочетания клавиш, связанного с идентификатором акселератора, как значение ключа ASCII/ANSI или сочетание виртуального ключа (VIRTKEY).
Если свойство Type равно ASCII, значение свойства Модификатора может быть только
NoneилиAlt, или иметь ускоритель, использующий клавишу Ctrl, например, путем предварительного ввода клавиши^.Если свойство Type имеет значение VIRTKEY, допустимо любое сочетание модификаторов и значений ключей.
Примечание.
Если вы хотите ввести значение в таблицу акселераторов и иметь значение, которое рассматривается как ASCII/ANSI, выберите тип для записи в таблице и выберите ASCII из раскрывающегося списка. Однако при использовании команды Next Key Typed в меню "Изменить " для указания ключа необходимо изменить свойство Type с VIRTKEY на ASCIIперед вводом кода ключа .
Таблицы ускорений
В проекте C++ можно изменить таблицу акселератора непосредственно в режиме редактирования на месте в редакторе акселератора.
Приведенные ниже процедуры относятся к использованию стандартных страниц свойств; при этом как редактирование на месте, так и метод со страницами свойств дают одинаковый результат. Изменения, внесенные с помощью страниц свойств или при редактировании на месте, немедленно отражаются в акселераторной таблице.
Редактирование в таблице акселераторов
Откройте таблицу акселераторов, дважды щелкнув значок в представлении ресурсов.
Выберите запись в таблице и активируйте редактирование на месте.
Выберите из раскрывающегося списка или введите на месте, чтобы внести изменения.
Для идентификатора выберите из списка или типа для редактирования.
Для модификатора выберите из списка.
Для ключа выберите из списка или типа для редактирования.
Для типа выберите ASCII или VIRTKEY из списка.
Найти запись в открытой таблице быстрого доступа
Откройте таблицу акселераторов, дважды щелкнув значок в представлении ресурсов.
Выберите головку столбца, чтобы отсортировать содержимое столбца в алфавитном порядке. Например, выберите идентификатор , чтобы отобразить все идентификаторы в таблице акселератора в алфавитном порядке.
Затем просмотрите список и найдите запись.
Добавить запись в таблицу сочетаний клавиш
Откройте таблицу акселераторов, дважды щелкнув значок в представлении ресурсов.
Щелкните правой кнопкой мыши в таблице акселератора и выберите новый ускоритель или выберите пустую запись строки в нижней части таблицы.
Выберите идентификатор из раскрывающегося списка в поле идентификатора или введите новый идентификатор в поле идентификатора.
Введите клавишу, которую вы хотите использовать в качестве акселератора, или щелкните правой кнопкой мыши и выберите Следующая нажатая клавиша, чтобы задать сочетание клавиш, или перейдите в меню Правка>Следующая нажатая клавиша.
При необходимости измените модификатор и тип и нажмите Enter.
Примечание.
Убедитесь в том, что все определяемые сочетания клавиш уникальны. Для ID_PRINT можно назначить несколько сочетаний клавиш с одним и тем же идентификатором без плохого эффекта, например ctrl+P и F8. Однако сочетание клавиш, назначенное нескольким идентификаторам, не будет работать хорошо, например, Ctrl+Z, назначенное как для ID_SPELL_CHECK, так и для ID_THESAURUS.
Удаление записи из таблицы сочетаний клавиш
Откройте таблицу акселераторов, дважды щелкнув значок в представлении ресурсов.
Выберите запись, которую нужно удалить, или удерживайте клавишу CTRL или SHIFT при выборе нескольких записей.
Щелкните правой кнопкой мыши и выберите Удалить, или перейдите в меню Редактировать>Удалить.
Совет
Вы также можете нажать клавишу DELETE для удаления.
Перемещение или копирование записи таблицы сочетаний клавиш в другой файл описания ресурсов
Откройте таблицы акселератора в файлах скриптов ресурсов и выберите запись, которую вы хотите переместить.
В меню "Изменить" выберите "Копировать" или "Вырезать".
Выберите запись в файле скрипта целевого ресурса и в меню "Изменить " выберите "Вставить".
Примечание.
Для копирования и вставки можно также использовать сочетания клавиш.
Изменение свойств нескольких ключей акселератора
Откройте таблицу акселераторов, дважды щелкнув значок в представлении ресурсов.
Выберите клавиши акселератора, которые нужно изменить, удерживая клавишу CTRL при выборе каждого из них.
Перейдите к окно свойств и введите значения, которые нужно предоставить всем выбранным акселераторам.
Примечание.
Каждое значение модификатора отображается как логическое свойство в окне "Свойства ". При изменении значения модификатора в окне свойств таблица акселераторов обрабатывает новый модификатор как дополнение к любым модификаторам, которые были ранее там. Из-за этого, если вы задали какие-либо значения модификатора, вам необходимо задать их все, чтобы каждый акселератор использовал одни и те же настройки модификатора.
Требования
Win32