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

Размеры и положение компонент на TListBoxItem


x11

Вопрос

Не могу понять странного поведения компонент.

Лежат все так один за другим: Label1, Edit1, Edit2, Edit3, Edit4

у всех Align := Left;

Если в списке "View" выбрано Windows, то всё красиво и правильно. Ну в этом режиме я и выполняю основной дизайн.

Как только переключаю режим в спике View на iPhone 5.5", то первый Edit1 растягивается на всю ширину элемента TListBoxItem, остальных не видно.

А вот если переключить на iPhone 4.7", то все относительно правильно.

А если переключить на Android 5" Phone то Label1, который должен быть первым вдруг перемещается вправо и становится последним, а первый Edit1 вообще куда-то исчезает. А если переключить на Android 7" Tablet, то снова всё красиво.

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

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

  • 0

Такая же свистопляска, если лежат несколько TLabel и TEdit с Align := Right один за другим.

Почему-то один из Edit`ов перемещается влево + размер меняет. А почему тогда другие размер не меняют?

 

К примеру, есть 2 TEdit: 1 и 2.

Выбираю разные View и в разных View элементы TEdit в разном порядке.

Screenshot_52.png

Screenshot_53.png

Screenshot_54.png

Screenshot_55.png

 

Сделал ещё вот такой эксперимент. Кинул на ListBoxItem TPanel, указал Align := Client.

Кинул 2 TEdit на панель и указал им в Align := Left;

Потом второй TEdit переместил мышкой левее первого.

Переключаю View в разные режимы и теперь ВСЕГДА TEdit2 перемещается на своё прежнее второе место. Хотя в Master этот элемент виден первым.

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

Чтобы посмотреть, как будет выглядеть форма с элементами на разных экранах

 

Пока вижу только такой вариант: на одном элементе TListBoxItem размещать TEdit с такими настройками. Тогда оно более менее нормально выглядит, но место используется не рационально.

Screenshot_59.png

 

Да и вообще, дизайнер как-то странно себя ведёт.

Указываешь ширину в Инспекторе свойств у компоненты и ничего не происходит, не меняется значение. А мышкой растянуть можно. А у другой получается.

С таким дизайнером руки опускаются :(

 

Если включено akLeft, то размер, например, TEdit`а можно изменить только мышкой, в Инспекторе свойств не получается.

 

Если выбрать компоненту, которая лежит на TListBox и нажать Ctrl+X, вываливается AV и помогает только перезапуск IDE.

 

Непонятно зачем среда создает дополнительные файлы fmx. Хотя после implementation только одна строка "{$R *.fmx}"

Где это настраивается, чтобы эти файлы не создавались?

Ссылка на комментарий
  • 0
В 06.08.2017 в 21:23, Равиль Зарипов (ZuBy) сказал:

зачем использовать другие View?

 

В 06.08.2017 в 21:39, x11 сказал:

Непонятно зачем среда создает дополнительные файлы fmx.

это связано

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

Вот пример. Вверху размеры компонент в дизайне, а ниже - во время исполнения.

Это в Win 10.

Получается, что во время исполнения программы, Firemonkey плюёт на тот размер, который я выставил переключателю TSwitch и выставляет какие-то свои?

 

Screenshot_23.png

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

По поводу TSwitch нашёл http://fire-monkey.ru/topic/1855-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BB%D0%B8-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C-%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80-switch/

тогда разработчикам следовало бы убрать, скрыть свойство Width и запретить менять размеры этой компоненты в дизайне

 

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

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

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

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

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

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

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

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

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

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

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