![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать высоту строки в пикселях? [D5, Win95/98]
Olfi © (2002-03-02 15:16:00)Строки компонента TRichEdit, т. е. высота строки может менятся от размера, шрифта и т.д. Так вот размер нужен тот, который виден на экране. Как это сделать?
Ketmar (2002-03-04 02:28:00) [1]2Набережных С.
ну обговорился. первую фразу следует читать так: "на самом деле, использование функции API TextHeight напрямую, без некоторых ухищрений не даст желаемого эффекта." теперь Ваша душенька довольна?
04/Mar/XXXVII A.S.
Набережных С. (2002-03-03 19:12:00) [2]
> Ketmar © (03.03.02 18:18)
Сначало
>на самом деле, TextHeight здесь не подойдет
Потом
>тогда уж делать TextHeight
Железная логика." IMHO."
Ketmar (2002-03-03 18:18:00) [3]на самом деле, TextHeight здесь не подойдет. и штатных средств нету, насколько Я помню. тут надо анализировать строку вручную, находить самый высокий шрифт, а тогда уж делать TextHeight. IMHO.
03/Mar/XXXVII A.S.
Anatoly Podgoretsky (2002-03-03 16:53:00) [4]Olfi © (03.03.02 14:10)
А может это ты неправильно пробовал
Набережных С. (2002-03-03 15:44:00) [5]И как ты, интересно, пробовал? Попробуй вот так:
var
C:TControlCanvas;
begin
C:=TControlCanvas.Create;
try
C.Control:=RichEdit1;
C.Font.Size:=RichEdit1.Font.Size;//или SelAttributes.Size
result:=C.TextHeight("W");
finally
C.free;
end;
Olfi (2002-03-03 14:10:00) [6]Так пробовал. Всё время равно 13, независимо от размера шрифта! Это не подходит...
Gayrus (2002-03-02 16:01:00) [7]Что-то вроде canvas.textHeight("text"):Integer;