Синхронизация меню на разных формах 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Синхронизация меню на разных формах



В некоторых приложениях вид дочернего окна интерфейса MDI может отличаться от родительского окна MDI. Например, если родительский интерфейс MDI — таблица, то дочерний интерфейс MDI может быть диаграммой. В этом случае может потребоваться обновление содержимого меню родительского интерфейса MDI содержимым меню дочернего интерфейса MDI при активировании различных видов дочерних окон интерфейса MDI.

В следующей процедуре свойства IsMdiContainer, AllowMerge, MergeAction и MergeIndex используются для добавления дочернего меню MDI в родительское меню MDI. При закрытии дочернего окна MDI из родительского интерфейса MDI удаляются добавленные пункты меню.

Пусть существуют родительская форма Form1 с программным меню и дочерняя форма Form2 со своим программным меню.

Чтобы добавить пункт дочернего меню в родительский интерфейс MDI

1. Добавьте MenuStrip в Form1 и присвойте свойству AllowMerge компонента MenuStrip значение true.

2. На форме Form2 присвойте свойству AllowMerge меню MenuStrip значение true.

3. Свойству MergeAction элементов меню дочерней формы, которые должны автоматически добавиться в родительское меню присвойте значение Append.

Пример.

Пусть Меню формы Form1 имеет вид:

Меню формы Form2 имеет вид:

Если выполнить только первые два шага алгоритма создания синхронизированного меню, то получим два пункта Формы при открытии дочерней формы:

Свойство MergeAction имеет несколько значений:

· Append – последовательно слева направо добавляет пункты дочернего меню вместе с подпунктами в родительское меню.

· Insert – вставляет пункт дочернего меню вместе с подпунктами в родительское меню в соответствии с индексом, заданным в свойстве MergeIndex. Если MergeIndex =-1, то дочернее меню остается в дочерней форме, например:

· Replace – ищет текстовое совпадение пунктов родительского и дочернего меню. Если текстовое совпадение найдено, то заменяет родительское меню дочерним меню, например:

· Remove – удаляет родительское меню, например:

· MarchOnly – ищет текстовое совпадение пунктов родительского и дочернего меню. Если текстовое совпадение найдено, то оставляет оба меню, но подпункты из совпадающих меню добавляются в родительское. Дочернее меню видимо, но неактивно. Например:

Примечание. Каждое меню дочерней формы обрабатывается отдельно. В данном примере у подменю Закрыть свойство MergeAction имеет значение Append. Если его поменять на другое значение, эффект будет иным.



Поделиться:


Последнее изменение этой страницы: 2017-01-20; просмотров: 547; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.74.54 (0.006 с.)