Теперь следует запустить проект и выбрать пункт File. На экране появится список терминальных пунктов: Import, Load и Save. Кроме выполнения пункта меню при помощи щелчка мыши, система обеспечивает быстрый выбор пункта при помощи «горячей клавиши». Выполнить пункт Save можно, щелкнув по нему левой кнопкой мыши или просто нажав клавишу с первой буквой названия - S. Выполнить пункт Import, нажав клавишу I, не удастся, так как с ним связана клавиша о. В шаблоне меню буква названия пункта, назначенная «горячей» клавишей, отмечается
Создание и использование меню
символом & (в нашем случае Imp&ort). На изображении меню можно увидеть, что буква о подчеркнута.
В приведенном выше шаблоне используется первая буква пункта File и отмеченная символом & буква г пункта Work основного меню. Но в этом случае для вызова пункта нужно нажимать Alt + Клавиша, а в основной цикл вставить функцию Transi ateMessageC ), как показано в листинге 5.4.
Листинг 5.4
while (GetMessage( (LPMSG) &msg. NULL. 0. 0) ) {
TransiateMessage(&msg); DispatchMessageC (LPMSG) &msg );
}
Чтобы ускорить создание меню и других стандартных ресурсов, в среде Visual С++ предусмотрен редактор ресурсов. Редактор позволяет создавать шаблоны ресурсов, используя технологию визуального проектирования. Он автоматически закрепляет числовые константы за именами команд меню и формирует файл resource.h. Рисунок 5.1 иллюстрирует работу редактора в тот момент, когда отображается состав подменю File и выведено окно для задания свойств пункта Import. В этом окне находятся поля, позволяющие создать текстовое описание меню. Здесь есть также поле Prompt, содержащее подсказку, в которой указывается развернутое описание назначения пункта, которого не было в шаблоне меню.
Текст этого комментария включается редактором в файл после описания структуры меню в виде таблицы строк. В приведенном выше примере файла ресурсов таблица строк начинается со строки STRINGTABLE DISCARDABLE. Каждая строка таблицы кроме текста содержит идентифицирующий строку код. В данном случае для идентификации используются команды меню.