![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Проблема отображения главного меню в Delphi-приложениях на OSX и WindowsDelphi , ОС и Железо , WindowsРазработчики, столкнувшиеся с мультиплатформенной разработкой под Delphi, иногда сталкиваются с проблемами совместимости интерфейса. Одной из таких проблем является некорректное отображение главного меню в приложениях, созданных с использованием Delphi Seattle, на операционных системах OSX и Windows. В частности, при разработке Multi-Device Application и добавлении TMainMenu с MenuItem1 и MenuItem2, в операционной системе OSX отображается только второй элемент меню, в то время как в Windows оба элемента отображаются корректно. Разберемся с этой проблемой. Описание проблемыПользователь создал Multi-Device Application в Delphi Seattle и добавил TMainMenu с двумя элементами меню: MenuItem1 и MenuItem2. При сборке и запуске приложения на OSX отображается только MenuItem2, в то время как на Windows оба элемента меню отображаются без проблем. Пользователь не применял к элементам меню никаких особенных настроек, они были добавлены в стандартном режиме. Подтвержденный ответВ операционных системах на базе MacOS структура меню отличается от Windows. В верхней части меню обычно располагаются следующие пункты:
В FMX (кроме самой первой версии) первый элемент главного меню представляет собой меню приложения. Поэтому, для корректного отображения меню в OSX, необходимо добавить элемент перед File (или другим первым элементом), который будет отображаться только в OSX. Подэлементы этого пункта должны включать стандартные пункты меню приложения на Mac. Для реализации поведения этих пунктов можно использовать стандартные действия (например, TFileHideApp, TFileHideAppOthers, TFileExit). Шаги решения проблемы
Пример кода на Object Pascal (Delphi)
Также можно использовать директивы компиляции для скрытия элементов меню в зависимости от платформы:
ЗаключениеПри разработке мультиплатформенных приложений важно учитывать особенности пользовательского интерфейса каждой из целевых платформ. В данном случае, для корректного отображения главного меню в приложениях, запущенных на OSX и Windows, необходимо правильно настроить структуру меню и использовать стандартные действия, предоставляемые FMX. Проблема заключается в некорректном отображении главного меню в мультиплатформенном приложении Delphi на OSX, когда из-за отличий в структуре меню на этой операционной системе отображается только второй элемент, в то время как на Windows оба элемента ото Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |