Я ищу, чтобы предотвратить изменение дочернего MDI WindowState при создании второго дочернего MDI ...
У меня есть приложение, которое я разрабатываю, написанное на Delphi. Благодаря небольшой магии Delphi / Windows у приложения есть несколько родительских MDI и несколько дочерних MDI.
Я могу создать форму (дочерний элемент A1) и развернуть ее в родительском элементе MDI (родительский элемент A). Я могу создать вторую форму (Child B1) и развернуть ее во втором родителе MDI (Parent B). Обе формы будут преобразованы в отдельные родительские элементы MDI. Все идет нормально. У меня это работает.
Однако, когда я создаю второго дочернего элемента MDI (Child A2) в первом родительском элементе MDI (Parent A), WindowState (wsMaximized) первого дочернего элемента (Child A1) изменяется при создании второго дочернего элемента (Child A2). Я хочу, чтобы первый дочерний элемент (Child A1) оставался развернутым, а второй дочерний элемент (Child A2) был создан и помещен поверх первого ребенка ...
Как я могу предотвратить изменение состояния первого дочернего элемента MDI, но также создать второго дочернего элемента MDI? Какие-нибудь намеки?
Хорошо - Теперь я немного пообедал, может, я смогу объяснить это лучше ... вот вторая попытка ...
Описанное поведение можно воспроизвести в простом приложении MDI (магия, которую я использовал для создания нескольких родителей MDI, не влияет на мою проблему)
Создайте новое приложение форм, изменив стиль формы на fsMdiForm Создайте вторую форму, измените ее стиль на fsMDIChild Создайте третью форму, измените ее стиль на fsMDIChild
Запустите приложение. Создайте экземпляр второй формы, затем разверните (работает, как ожидалось - максимизирует в MDI Parent). Создайте экземпляр третьей формы, третья форма открывается с состоянием окна wsNormal. Но когда создается третья форма, состояние окна второй формы меняется - оно перестает разворачиваться и становится wsNormal, как если бы вы нажали восстановить!
Я хочу избежать восстановления второй формы, когда я открываю третью форму ... (Все формы имеют начальное WindowState wsNormal ...
Любые подсказки приветствуются!