Операционная система Microsoft Windows 3.1 для программиста© Александр Фролов, Григорий ФроловТом 13, М.: Диалог-МИФИ, 1993, 284 стр. 1. Меню
В этой главе мы выполним классификацию типов меню , научим вас создавать, изменять и удалять меню в приложениях Windows. Вы знаете, что меню используются в приложениях Windows для выбора отдельных команд или изменения режимов работы приложений. Программный интерфейс Windows обеспечивает сильную поддержку меню, так как меню - важный элемент пользовательского интерфейса. Создавая меню в программах MS-DOS, вы были вынуждены либо приобретать специальные библиотеки функций или другие средства (C Tools, Turbo Vision, Vitamin C и т. п.), либо создавать свои функции для работы с меню. Для того чтобы создать меню в приложении Windows, вам достаточно разработать его внешний вид и создать шаблон при помощи редактора Resource Workshop или аналогичного средства графического проектирования элементов пользовательского интерфейса. Шаблон меню следует записать в ресурсы приложения, после чего за работу меню отвечает операционная система Windows. Когда вы выбираете строку из меню, ваше приложение получает сообщение WM_COMMAND. Это сообщение содержит идентификатор выбранной строки. Таким образом, при создании приложения, работающего с меню, задача программиста сводится к определению обработчика сообщения WM_COMMAND, поступающего от меню. Вы можете выбирать из меню при помощи мыши или клавиатуры, при этом сам процесс выбора (т. е. выделение строк меню, показ временных меню и т. п.) обеспечивается операционной системой Windows. Ваше приложение получает сообщение о том, что сделан выбор той или иной строки из меню, но для обеспечения работы приложения программисту нет необходимости знать, каким именно способом был сделан выбор. Прежде чем приступить к описанию средств операционной системы Windows, предназначенных для работы с меню, мы расскажем о том, какие стандартные типы меню можно создать в приложениях Windows. Вы также можете создать свои собственные, нестандартные типы меню, работающие так, как это должно быть с вашей точки зрения. Однако нестандартные элементы диалогового интерфейса могут затруднить работу пользователя с приложением и вступить в противоречие с концепцией стандартного пользовательского интерфейса. |