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

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

Количество символов в Memo [D6, Win95/98, WinXP]


saNat ©   (2004-10-10 00:28:00) 

Доброго времени суток.
Подскажите пожалуйста, как определить максимальное количество символов, которое "влезет" в строку Memo для данного шрифта. Нужно сделать выравнивание по ширине. В DOS все решается просто - есть ширина экрана, вычисляем количество символов и вставляем пробелы. Сдесь же нужно учесть различную ширину символов шрифта можно конечно задатть моноширный, но это частный случай), а так же узнатьт сколько занимает данный символ...

Спасибо за внимание.

С уважением...


saNat   (2004-10-10 11:16:00) [1]

to Германн © (10.10.04 03:30) [3]:
По справке смотрел. Или я не так понял?
TCustomMemo.TextWidth

Returns the width, in pixels, of a given line.

property TextWidth[LineNum: Integer]: Integer;

Description

Use TextWidth to return the width, in pixels, of the line specified by the LineNum parameter.


Тем неменее, как к нему обратиться?


Германн   (2004-10-10 03:30:00) [2]

TextWidth - есть свойство TCanvas. Кто вам сказал, что это свойство TCustomMemo?


saNat   (2004-10-10 01:35:00) [3]

Судя по F1 TextWidth есть свойство TCustomMemo, который является предком TMemo. А как обратитьтся к этому свойству?


Юрий Зотов   (2004-10-10 00:59:00) [4]

> а так же узнатьт сколько занимает данный символ...

Например, GetCharWidth32 (API).

Еще есть TextWidth (VCL) или DrawText с DT_CALCRECT (API) - можно сразу вычислить ширину заданного текста, а не символа.


Наверх

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