Цитата: Убрал эту строчку и у меня стало все нормально
За этой строкой очень глубокий функционал прячется. И много непоняток, которые тянутся с тех пор, как только она появилась, как минимум - вышеобозначенная проблема.
Чисто визуально - при Application.MainFormOnTaskbar := False меню приложения (у кнопки на панели задач) становится как в Дельфи 7 - сильно сокращенное. Но это ерунда.
Гораздо важнее, что при Application.MainFormOnTaskbar := False у главной формы есть владелец - объект Application, который и является главным окном приложения (как и в старых версиях Дельфи). А при Application.MainFormOnTaskbar := True главная форма не имеет владельца в понятиях системы, именно она является главным окном приложения! Т.е. Дельфи по прежнему эмулирует такое поведение, что якобы у формы владелец - объект Application, и вызвав для главной формы ShowMessage(Self.Owner.ClassName), мы получим сообщение "TApplication". Но это всего-навсего эмуляция! Если выполнить строку (на уровне WinAPI):
Код: ParentWnd := THandle(GetWindowLongPtr(Self.Handle, GWLP_HWNDPARENT))