Кент Рейсдорф. BORLAND C++BUILDER. Раздел 2
Кент Рейсдорф. BORLAND C++BUILDER. Страница 198
В C++Builder вы можете создавать контекстные меню с такой же легкостью, как и главное меню. C++Builder позволяет сопоставить каждому компоненту свое контекстное меню с помощью свойства PopupMenu. При нажатии правой кнопки мыши на этом компоненте на экране будет автоматически отображено соответствующее меню. Обработчики для пунктов контекстного меню пишутся так же, как и для пунктов главного меню.
В программах обработки текстов принято дублировать операции Cut, Сору и Paste в контекстном меню. Это следует сделать и в программе Scratch- Pad. Для создания контекстного меню мы немного схитрим и скопируем часть главного меню. Итак, приступаем:
1. Выберите компонент PopupMenu из палитры компонентов и поместите его в форму.
2. Измените значение свойства Name на MemoPopup.
3. Дважды щелкните на значке PopupMenu для запуска редактора меню.
4. Щелкните правой кнопкой мыши для вызова контекстного меню редактора. Выберите в нем пункт Select Menu. В открывшемся диалоговом окне будет показан список меню, доступных вашему приложению. Выберите MainMenu и нажмите кнопку ОК.
5. Выберите пункт Edit. Щелкните на пункте Cut, затем, удерживая нажатой клавишу Shift, щелкните на пункте Paste. Cut, Сору и Paste будут выделены.
6. Для копирования выбранных пунктов в буфер обмена, выберите в главном меню C++Builder пункт Edit | Сору (не трогайте пункт Edit | Сору в меню, загруженном в редактор) или нажмите Ctrl+C.
7. Снова выберите пункт Select Menu в контекстном меню редактора. На этот раз щелкните на MemoPopup и нажмите ОК. Редактор меню отобразит пустое контекстное меню.
8. Выберите в главном меню пункт Edit | Paste или нажмите Ctrl+V. Пункты Cut, Сору и Paste будут вставлены в контекстное меню.