Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Всплывающее меню
'Всплывающее (локальное) меню (pop-up menu) представлено в Delphi компонентом PopupMenu. Отыщите его в Палитре Компонентов на странице Standard и поместите на форму. Дайте новому компоненту имя PopMenu. Обозначим наиболее важные свойства компонента всплывающего меню:
Шаг 19. Всплывающее меню наполняется пунктами, как и главное меню — в Дизайнере Меню. Двойным щелчком мыши на компоненте PopMenu откройте окно Дизайнера Меню и, используя уже известные вам приемы, добавьте в меню пункты Half Size (с идентификатором PopHalfSizeltem), Normal Size (с идентификатором PopNormaISizeltem) andDouble Size (с идентификатором PopDoubleSizeltem). Во всех пунктах всплывающего меню установите следующие свойства: Enabled = False; Grouplndex = 1; Radioltem = True Кроме этого, пометьте пункт Normal Size, установив в нем свойство Checked в значение True. Таким образом, команды всплывающего меню дублируют некоторые команды главного меню, обеспечивая пользователю дополнительные удобства. Когда проектирование меню завершено, перейдем к программированию обработчиков событий. В данном примере команды всплывающего меню обрабатываются так же, как и команды одноименных пунктов главного меню. Поскольку для пунктов главного меню обработчики уже написаны, то их просто нужно подключить к пунктам всплывающего меню. Это делается очень просто. Шаг 20. Активизируйте в Дизайнере Меню пункт Half Size и выберите в Инспекторе Объектов страницу Events. Теперь в значении события OnClick откройте выпадающий список и выберите обработчик HalfSizeltemClick. To же самое проделайте с пунктами Normal Size и Double Size, но установите в них обработчики NormalSizeltemClick иDoubleSizeltemClick соответственно. Шаг 21. Для синхронной работы главного и всплывающего меню нужно еще скорректировать некоторые существующие методы: procedure TPictureForm. Half SizeItemClick (Sender: TObject); Begin HalfSizeltem.Checked: = True; PopHalfSizeItem.Checked: = True; { Показать картинку половинного размера } end; procedure TPictureForm.NormalSizeItemClick(Sender: TObject); Begin NormalSizeItem.Checked: = True; PopNormalSizeItem.Checked: = True; { Показать картинку нормального размера } end; procedure TPictureForm. DoubleSizeItemClick (Sender: TObject); Begin DoubleSizeItem.Checked: == True; PopDoubleSizeItem.Checked: = True; { Показать картинку двойного размера } end; procedure TPictureForm. EnableCornmands (Enable: Boolean); Begin SaveAsItem.Enabled: = Enable; Closeltem.Enabled: = Enable; HalfSizeltem.Enabled: = Enable; NormalSizeItem.Enabled: = Enable; DoubleSizeItem.Enabled: = Enable; PopHalfSizeItem.Enabled: = Enable; PopNormalSizeItem.Enabled: = Enable; PopDoubleSizeItem.Enabled: = Enable; end; Шаг 22. Всплывающее меню готово, осталось сделать так, чтобы оно вызывалось по щелчку правой кнопки мыши в области формы. Нет ничего проще — активизируйте форму и запишите в значении свойства PopupMenu имя разработанного ранее всплывающего меню PopMenu. Вы можете ввести это значение с клавиатуры или выбрать из выпадающего списка. Готово, откомпилируйте и запустите проект. Щелчок правой кнопки мыши в окне приложения вызовет появление всплывающего меню. Все его пункты окажутся запрещены. Чтобы пункты всплывающего меню заработали, выполните команду главного меню File | Open. После этого удостоверьтесь, что выпадающее меню работает синхронно с главным меню.
|