• 0
Menkos1

Обрезается размер у Form

Вопросы

Delphi 10.1 Berlin - FMX

Вызываю форму вот так:

  Form3.Left := Form1.Left + 150;
  Form3.Top := Form1.Top;
  Form3.ShowModal;

 

Форма имеет размер 400*400, BoardStyle = None

Не всегда, но время от времени - окно открывается не полностью - в чем может быть причина ?

см. во вложениях - с левой стороны обрезанное, с правой стороны нормальное.

707.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 ответов на этот вопрос

  • 0

те высота стоит 400 у формы, и иногда - когда вызываю данную форму, высота становится 350..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Ошибка из-за того что, некоторые в виндовс выставляют вместо стандартных настроек 100% (масштабирование текста), на 125% и картинка формы как бы растягивается и кнопки тоже растягиваются, как сделать так чтобы Приложение игнорировала эту опцию виндовс.

Снимок.PNG

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

никак. это же приложение windows

но если вы зададите всем элементам на форме шрифт в явном виде...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
46 минут назад, krapotkin сказал:

никак. это же приложение windows

но если вы зададите всем элементам на форме шрифт в явном виде...

ну текст одно, а то что элементы вытягиваются и заходят за рамки самой формы - вот это не очень..

Например TImages с картинкой увеличивается и становится больше чем поле формы, тем самым растягивается =)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
56 минут назад, Menkos1 сказал:

Например TImages с картинкой увеличивается и становится больше чем поле формы, тем самым растягиваетс

По умолчанию TImage.WrapMode=TImageWrapMode.Fit

Чтобы картинка не масштабировалась, нужно выставить TImage.WrapMode := TImageWrapMode.Original

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
2 минуты назад, Вадим Смоленский сказал:

По умолчанию TImage.WrapMode=TImageWrapMode.Fit

Чтобы картинка не масштабировалась, нужно выставить TImage.WrapMode := TImageWrapMode.Original

Постараюсь разобраться, а с кнопками есть такое же условие ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
1 час назад, Menkos1 сказал:

Постараюсь разобраться, а с кнопками есть такое же условие ?

Точно такого же нет. Если хотите, чтобы у вас не масштабировались TButton, TLabel и им подобные контролы, то можно воспользоваться их параметром Scale - это масштаб контрола по горизонтали (Scale.X) и вертикали (Scale.Y). Если вы знаете коэффициент экранного масштабирования, то достаточно сделать так:

 MyButton.Scale.X:=1/Coefficient;
 MyButton.Scale.Y:=1/Coefficient;

Сам же коэффициент извлекается следующим образом (вот здесь меня проинструктировал dnekrasov):

Coefficient:=FMX.Helpers.Win.GetWndScale(FMX.Platform.Win.ApplicationHWND);

Не забудьте только вставить FMX.Helpers.Win в раздел uses.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
17 часов назад, Вадим Смоленский сказал:

По умолчанию TImage.WrapMode=TImageWrapMode.Fit

Чтобы картинка не масштабировалась, нужно выставить TImage.WrapMode := TImageWrapMode.Original

Использую XE 10.1

пишу Main_Form.WrapMode - мне говорите что у TImage нету WrapMode...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
2 часа назад, Menkos1 сказал:

Использую XE 10.1

Что такое XE 10.1? Berlin? В этой версии точно TImage снабжен свойством WrapMode. И при чем здесь Main_Form? Это у вас TImage так назван?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
В 28.02.2018 в 12:24, Menkos1 сказал:

как сделать так чтобы Приложение игнорировала эту опцию виндовс

Если Вам не нужно масштабирование - просто в свойствах проекта снимите птичку "Enable High-DPI"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
52 минуты назад, Brovin Yaroslav сказал:

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

Как жаль что до сих пор сама студия не поддерживает High-DPI, хотя обещали еще в 10.2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

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

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