Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UP04_Menyu.doc
Скачиваний:
10
Добавлен:
01.03.2025
Размер:
555.01 Кб
Скачать

Контрольные вопросы

  1. Перечислите основные виды меню и укажите различия между ними.

  2. Запишите алгоритм создания главного меню, состоящего из двух разделов, если в каждом разделе строки связаны с командами.

  3. Для чего в цикле обработки сообщений в листинге 4.1 вызывают функцию TranslateMessage?

  4. Какие меню посылают сообщения функции окна и какие меню нужно разрушать при обработке сообщения WM_DESTROY?

  5. Каким образом можно послать сообщение WM_COMMAND с идентификатором команды, если связанная с этой командой строка заблокирована?

  6. Чем отличаются плавающие меню от остальных видов меню?

  7. Чем отличается генерация команды с помощью акселератора от генерации команды путем выбора строки меню?

  8. В каком порядке нужно описать основные объекты приложения, если таблица акселераторов изменяется при обработке сообщений?

  9. В чем преимущество использования виртуального кода в акселераторах?

Упражнения

  1. Главное меню содержит строки "Невидимый курсор", "Обычный курсор" и "Выход". Создать плавающее меню с такими же строками. Чтобы курсор стал невидимым, вызвать функцию ShowCursor(0); видимым – ShowCursor(1).

  2. Раздел "Пользователи" главного меню содержит список пользователей. При выборе пользователя в главном меню появляются дополнительные разделы. При смене пользователя меняются и эти разделы.

  3. При открытии или создании документа появляется раздел "Правка" с единственной командой "Выделить". После выбора этой команды в этом разделе добавляются строки "Удалить" и "Копировать", а команда "Выделить" отмечается галочкой (которая убирается при повторном выборе). Если выбрать команду "Копировать", то элемент "Удалить" заменяется элементом "Вставить".

  4. Главное меню содержит раздел "Файл", в котором перечислены строки с именами команд "Создать", "Открыть" и "Выход". После выбора строк "Создать" или "Открыть" добавить строки "Сохранить" и "Печать", а также раздел "Правка" со строками "Вырезать", "Вклеить" и "Копировать". Команды связать с акселераторами.

  5. Главное меню содержит раздел "Файл" с именами команд "Создать", "Открыть", "Сохранить", "Закрыть", "Печать" и "Выход", а также раздел "Правка" со строками "Вырезать", "Вклеить" и "Копировать". После выбора команды "Закрыть" удалить раздел "Правка". Команды связать с акселераторами.

  6. Главное меню содержит раздел "Рисунок" с именами четырех геометрических фигур. После выбора фигуры отобразить фигуру в определенной части окна. При нажатии правой клавиши мыши над любой отображенной фигурой на месте нажатия отобразить плавающее меню с соответствующими выбранной фигуре командами.

  7. Главное меню содержит раздел "Файл" со строками "Создать", "Открыть" и "Выход". При выборе строки "Создать" или "Открыть" создать окно, которое содержит меню с разделами "Правка" и "Эффекты". Команды связать с акселераторами.

  8. Главное меню содержит раздел "Файл" со строками "Создать", "Открыть" и "Выход". При выборе строк "Создать" или "Открыть" создать окно, которое содержит раздел меню "Фигуры" со списком имен геометрических фигур; при выборе имени отобразить фигуру с таким именем и пометить имя галочкой. При повторном выборе имени убрать фигуру и удалить галочку.

  9. Главное меню содержит раздел "Фигуры" с именами геометрических фигур. При выборе названия фигуры в главное меню добавить раздел с названием фигуры и перечислением основных ее параметров в этом разделе. При повторном нажатии должны исчезнуть этот раздел и галочка.

  10. Строки главного меню расположить в нескольких линиях, а строки плавающего меню – в одну линию.

  11. Создать плавающее меню для выбора и установки вида курсора мыши. При выборе имени вида курсора курсор мыши должен принять соответствующий вид. Для загрузки и показа курсора использовать операторы вида

HCURSOR hCursor=LoadCursor(NULL, IDC_CROSS); SetCursor(hCursor);

  1. Главное меню содержит раздел "Файл" со строками "Новый", "Открыть" и "Выход" и раздел "Помощь" со строками "Содержание" и "О программе". При выборе строки "Содержание" появляются строки "Введение", "Часть 1", "Часть 2" ... а при выборе строки "Часть ..." появляются строки "Раздел 1", "Раздел 2"...

  2. Рабочую область окна полностью занимают два временных окна. Главное меню первого окна содержит раздел "Файл" со строками "Открыть" и "Выход". Если выбрать строку "Открыть", то во втором окне появляется главное меню с разделом "Правка".

  3. Плавающее меню содержит строки "Спрятать", "Показать", "Масштаб", "Свойства". Строка "Масштаб" указывает на временное меню из четырех зависимых строк: "50%", "100%", "150%" и "200%", при выборе одна из которых отмечается кружочком.

  4. Рабочую область окна приложения занимают два временных окна. Главное меню первого временного окна содержит раздел "Файл" с командами "Создать", "Открыть", "Демо-версия" и "Выход". Причем состоянием строки "Демо-версия" управляет второе окно.

  5. Главное меню содержит раздел "Файл" со строками "Создать", "Открыть" и "Выход". При выборе команды "Создать" или "Открыть" добавить раздел "Правка" со строками "Вырезать", "Вклеить" и "Копировать". Команды только отображаемых строк связать с акселераторами.

  6. Главное меню содержит раздел "Файл", в котором перечислены строки с именами команд "Создать", "Открыть" и "Выход", которые могут быть отмечены как зависимые переключатели. После выбора строк "Создать" или "Открыть" добавить раздел "Правка" с командами "Вырезать", "Вклеить" и "Копировать", которые могут быть отмечены как независимые флажки. Команды отмеченных строк связать с акселераторами.

  7. Главное меню содержит раздел "Фигуры" с зависимым списком имен геометрических фигур. При выборе имени должна быть отображена только эта фигура и отмечено кружочком только это имя.

  8. Раздел "Файл" содержит строки "Создать", "Открыть", "Демо- версия" и "Выход". При выборе строки "Создать" или "Открыть" создать перекрывающееся окно с разделом меню "Эффекты". Список строк раздела "Эффекты" зависит от состояния строки "Демо-версия". Команды отображенных строк меню связать с акселераторами.

  9. Главное меню содержит раздел "Файл" со строкой "Открыть". При выборе этой строки в главное меню добавить раздел "Правка" со строками "Вырезать", "Копировать" и "Удалить", удалить строку "Открыть" и добавить строку "Закрыть". При выборе строки "Закрыть" вернуться к исходному состоянию. Команды отображенных строк меню связать с акселераторами.

  10. Рабочую область окна приложения полностью занимает временное окно с пустым главным меню. Главное меню окна приложения содержит раздел "Файл" со строками "Открыть" и "Закрыть" (заблокирована). При выборе команды "Открыть" создать главное меню временного окна с разделом "Правка" со строками "Вырезать", "Копировать" и "Удалить". После этого заблокировать строку "Открыть" и разблокировать команду "Закрыть". При выборе строки "Закрыть" вернуться к исходному состоянию.

  11. На месте нажатия правой клавиши мыши всплывает меню. Если курсор мыши ближе к верхнему или нижнему краю рабочей области, то строки меню выстроить в линию, иначе – в столбик.

  12. Главное меню содержит раздел "Пользователи", в котором перечислены строки с именами типов пользователей. После выбора типа пользователя этот раздел исчезает и появляется раздел "Данные", в котором перечислены общие для всех типов пользователей и типичные только для выбранного типа строки данных. Команды отображенных строк связать с акселераторами.

  13. Главное меню содержит раздел "Цвета" с пятью именами стандартных цветов Windows и раздел "Фигуры" с именами трех плоских фигур. После выбора цвета и фигуры отобразить фигуру выбранным цветом, а соответствующие строки меню отметить галочкой. При повторном нажатии должны исчезнуть эта фигура и галочки.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]