Перейти к содержанию
Fire Monkey от А до Я
  • 0

Нативные элементы управления


0xdeadc0de

Вопрос

Рекомендуемые сообщения

  • 0

Я конечно не Ярослав, но если я не ошибаюсь в XE7 уже есть нативные TEdit и TCalendar, получить которые можно следующем образом:

 

1) Добавляете на форму TEdit и TCalendar как обычно

2) Находите у них параметр ControlType и меняете его со Styled на Platform

3) Теперь посмотрев на эти объекты на форме Вы можете увидеть на них надписи: "TEdit (native)" и "TCalendar (native)" соответственно

 

И да, в следующих версиях RAD Studio планируется добавление новых нативных элементов управления.

Ссылка на комментарий
  • 0

А нативность, в некоторых случаях, не урезает функциональность на определенной платформе?(Ведь ОС разные - и возможности контролов для разных осей тоже разные)

Ссылка на комментарий
  • 0

Мня, мня... :) А что значит "нативный" элемент управления. В XE7 если у TEdit оставить свойство ControlType в значении Styled и сделать приложение в стиле MetropolisUI, то при вводе текста отображение не корректное. Необходимо менять свойство на Platform. Почему так сделали?

Ссылка на комментарий
  • 0
  • Администраторы

На счет планов вам не могу ничего рассказать.

 

На счет того, что значит "нативный" элемент управления. Практически все контролы FireMonkey - это самодельные контролы, которые сделаны с нуля. За исключением пары: TWebBrowser, TMediaPlayerControl и TBannerAd. "Нативные" - это значит использование родного элемента управления, предоставляемого операционной системой. Каждая ОС имеет свой набор элементов управления, которые можно использовать в своих программах. Поэтому, в XE6 появился механизм поддержки нескольких реализаций контрола в рамках одной системы. Или другими словами появился некий аналог MVP (Model, View, Presenter), который позволяет в режиме выполнения менять на лету способы отображения контрола и его работу.

 

XE7 имеет несколько контролов, которые поддерживают такой механизм: TEdit, TCalendar, TEditBox, TSpinBox, TNumberBox, TCalendarEdit, TClearingEdit, TComboEdit и TComboTrackBar. Это значит, что для этих контролов пользователь может использовать новый подход для создания своих независимых представлений. Из этих контролов, пока только 2 имеют нативное представление (то есть используют контролы ОС) - это TCalendar и TEdit.

 

Выбор представления осуществляет через свойство ControlType. Platform - означает, что будет пытаться взяться нативное представление, Styled - самостоятельная реализация FM с использованием стилей. Если текущая платформа не имеет нативного представления, то контрол автоматически будет использовать Styled представление.

 

Нативное представление обычно не может покрыть всю функциональность FMX. Так как у нас она расширенная. Но список ограничений для нативных представлений есть на сайте DocWiki.

Изменено пользователем Brovin Yaroslav
Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...