Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.17;
Скачать: CL | DM;

Вниз

Определить необходиму высоту для RichEdit   Найти похожие ветки 

 
VID ©   (2004-02-06 17:08) [0]

Я замучался уже...
Надо определить необходимую высоту для TRichEdit так что бы были видны все его строки. Текст - форматированный, некоторые строки 9, а некотторые 8 размера. Шрифт Courier New.

Делаю так:

Function TForm1.CalculateRichEditHeight(RichEdit:TRichEdit):Integer;
Var I:Integer;
begin
Result := 0; IF RichEdit = nil then exit;
For I:=0 to RichEdit.Lines.Count - 1 do
begin
RichEdit.SelStart := SendMessage(RichEdit.Handle, EM_LINEINDEX, I, 0);
Result := Result + RichEdit.SelAttributes.Height;
end;
end;

В результате действительно получаю некий Result но когда присваиваю его значение свойству RichEdit.Height то нифига все строки видны не бывает ((

Я знаю что если задать размер шрифта отрицательным значением, то Font.Heigth будет равен высоте шрифта + высота пустого место перед каждой строкой.
Поэтому перед вызовом вышеуказанной функции я делал
RichEdit.SelectAll;
RichEdit.SelAttributes.Size := -8;
и лишь потом вызывал функцию... но нифига, вообще складывается такое ощущение что для форматированного текста это правило (с отриц значением шрифта) не действует (такой вывод я сделал, когда поставил точку останова на строке
Result := Result + RichEdit.SelAttributes.Height; в вышеописанной функции. И подведя стрелку мышки к слову Height я увидел число 11 - и это правильно, но потом когда я сделал
RichEdit.SelectAll;
RichEdit.SelAttributes.Size := -8;
и снова вызвал функцию, то Height по прежнему был 11 ! - а это уже ведь не правильно, т.к. он должен быть отрицательным в таком случае...

в-общем если кто знает, помогите плиз... а я займусь пока что какой нить другой проблемой..


 
MBo ©   (2004-02-06 17:32) [1]

Внимательно посмотри на события TRichEdit в инспекторе объектов.


 
VID ©   (2004-02-06 17:52) [2]

Большое спасибо )



Страницы: 1 вся ветка

Текущий архив: 2004.02.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
8-53657
hi4kok
2003-10-20 03:09
2004.02.17
как реализовать вид из окна машиниста? деревья,рельсы и проч?


1-53561
tria
2004-02-09 12:41
2004.02.17
Как сохранить dfm в текстовом виде?


14-53742
Evgeniy_K
2004-01-28 13:00
2004.02.17
Числа Стирлинга второго рода


1-53577
ivan01234
2004-02-08 21:47
2004.02.17
Как сделать главную форму позади других?


8-53649
Леон
2003-10-13 22:45
2004.02.17
разоряюсь при черно-белой печати на цветные чернила