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

TMemo скролится вниз не до конца и отрезает буквы.


xenon54

Вопрос

Опубликовано (изменено)

При переходе на новую строку в TMemo, если это строка последняя в поле видимости, экран скролится на строчку вниз. Проблема в том что скролится на несколько пикселей меньше чем надо. Почти все буквы нормально вписываются в область видимости, а вот такие буквы как "у" у которых крюк вниз уходит Memo обрезает.

WHYEXzutjp_2237820_16709292.jpg

Вот скрин с винды, в IOS тоже самое.

Пробовал костыли с правкой Viewportposition на событии onchangetracking, но в итоге ничего хорошего не получилось. Как быть?

Изменено пользователем xenon54

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

  • 0
Опубликовано

По сути, получается, что единственный многострочный контрол для ввода текста в ФМ, коряво скролится, а отсюда получается, что никакого подобия чата запилить не получится? Правильно я все понял? Или есть какая-то альтернатива, или способ победить данную траблу.

P.S.: Не ожидал такого бага от единственного элемента многострочного ввода текста в ФМ :(

  • 0
Опубликовано (изменено)

А мы как-нибудь узнаем о том что появился какой-то временный фикс на внутреннем трекере?

Или я слишком наивен, думая что это быстро пофиксят :)

P.S.: в XE8 та же шляпа :( Ну, по крайней мере в том, который доступен для скачивания, но "официально" еще не выпущен.

 

 

 

https://quality.embarcadero.com/browse/AP-139

Изменено пользователем xenon54
  • 0
Опубликовано

Разработчики из Embarcadero похоже не реагируют на баг репорты в quality.embarcadero.com. Единственное, что они сделали, потерли комментарии к одной из моих записей  :)

  • 0
Опубликовано

Ну баг, как мне кажется, относится к разряду близкому к критическому, думаю должны как-то отреагировать. Вопрос сколько это займет времени. Хотя решение мне нужно здесь и сейчас поэтому пытаюсь сам решить эту проблему, не дожидаясь выпуска XE9 :(

  • 0
Опубликовано

У меня по XE7 3 репорта с приоритетом Major и 1 с приоритетом Critical, и никакой реакции, так что Ваш Minor имеет все шансы не быть исправленным никогда  :(

  • 0
Опубликовано

При переходе на новую строку в TMemo, если это строка последняя в поле видимости, экран скролится на строчку вниз. Проблема в том что скролится на несколько пикселей меньше чем надо. Почти все буквы нормально вписываются в область видимости, а вот такие буквы как "у" у которых крюк вниз уходит Memo обрезает.

WHYEXzutjp_2237820_16709292.jpg

Вот скрин с винды, в IOS тоже самое.

Пробовал костыли с правкой Viewportposition на событии onchangetracking, но в итоге ничего хорошего не получилось. Как быть?

так а если просто доп.строку добавить в конец текста!

  • 0
Опубликовано

Такой вариант не подходит. Мне нужно чтобы нижняя строка была четко снизу при печати текста.

1. добавить пустую строку снизу.

2. поджать динамически rectable снизу на несколько пикселей цветом фона 

  • 0
Опубликовано (изменено)

Мурашки по коже от таких костылей  :D

На самом деле нужно найти где неправильно происходит расчет автоскрола и поправить его. Только вот пока не удается толково это сделать, т.к. видимо проблема даже не в TMemo, а в TCustomScrollBox, но это пока догадка...

Изменено пользователем xenon54
  • 0
Опубликовано

В общем если кто-то будет искать, то вот такой позорный костыль капельку улучшает ситуацию:

  if ((NewViewportPosition.Y+MemoInheritor.Height)- round(MemoInheritor.GetContentBounds.Height)) = 2 then
    MemoInheritor.ViewportPosition := TPointF.Create(MemoInheritor.ViewportPosition.X, MemoInheritor.ViewportPosition.Y+2);

Этот код в событии "OnViewportPositionChange", MemoInheritor - наследник TMemo.

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить на вопрос...

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

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

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

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

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

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

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