![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Как исправить неправильное поведение дочерних форм в Delphi под Mac OS X с использованием WineDelphi , ОС и Железо , WindowsПри разработке приложений на Delphi для платформы Windows, разработчики могут столкнуться с различными проблемами при попытке запуска этих приложений в среде Mac OS X с использованием эмулятора Wine. Одна из таких проблем связана с неправильным поведением дочерних форм, которые не возвращаются в фокус при нажатии на основную форму. Описание проблемыПользователь обнаружил, что в приложении Delphi (XE8), работающем почти идеально в Wine на OSX 10.6, есть проблема: при открытии дочерней формы через меню основной формы, дочерняя форма частично закрывает основную, и нет возможности вернуть основную форму в фокус. Это поведение наблюдается как при использовании WineBottler, так и при использовании Crossover. Контекст и решение проблемыПроблема заключается в том, что дочерняя форма является "владеющей" (owned) формой по отношению к основной форме. В Windows-приложениях это стандартное поведение: владеющая форма всегда находится над владельцем. Шаги решения:
Теперь любая выбранная форма будет выводиться на передний план. ЗаключениеПроблема была вызвана стандартным поведением Windows, при котором владеющая форма всегда находится над владельцем. Исправление состояло в ручном создании формы и изменении ее владельца на Вопрос связан с исправлением неправильного поведения дочерних форм в приложениях Delphi на Mac OS X при использовании эмулятора Wine, где дочерние формы не возвращаются в фокус из-за их владельческих свойств по отношению к основной фо Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |