Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

AutoSize для Memo


Дмитрий С ©   (2008-09-18 01:08:00) 

Как сделать так, чтобы высота поля Memo автоматически менялась таким образом, чтобы был показан весь введенный текст?


Vlad Oshin   (2008-09-18 12:25:00) [1]


> как запретить в нем форматирование?

перед вставкой потереть символы разметки?


KilkennyCat   (2008-09-18 12:22:00) [2]

вероятно, при вставке нужно указать тип буфера как простой текст.


Dmitry S   (2008-09-18 11:42:00) [3]


> TRichEdit имеет соответсвующее событие, так что его лучше
> использовать

Отличный способ. Но есть нюанс: как запретить в нем форматирование? PlainText не помогает - при вставке форматированного текста из буфера - текст так и остается форматированным.


Vlad Oshin   (2008-09-18 10:04:00) [4]

на принтер сразу
нет, сначала: ShowMessage (' В офисе работаем? Принтер сетевой? на втором этаже? А.. Ну, беги.');


MBo   (2008-09-18 08:29:00) [5]

TRichEdit имеет соответсвующее событие, так что его лучше использовать


Германн   (2008-09-18 02:06:00) [6]

Лучше всего лечить геморрой, пока он в начальной стадии. :)


KilkennyCat   (2008-09-18 01:46:00) [7]


> Изменять разрешение и размер шрифта?


в принципе, можно. даже сделать это красиво, с анимацией. можно вывести сообщение с предложением купить новый монитор :)


Германн   (2008-09-18 01:40:00) [8]


> Как сделать так, чтобы высота поля Memo автоматически менялась
> таким образом, чтобы был показан весь введенный текст?
>

А если "весь введенный текст" не влезет на экран? Тогда что делать? Изменять разрешение и размер шрифта?


KilkennyCat   (2008-09-18 01:29:00) [9]

как вариант:
Использовать DT_CALCRECT флаг в DrawText для вычислений размера.
Но проще умножить высоту одной линии на Memo.Lines.Count


Наверх

Титульная страница Поиск, карта сайта Написать письмо