Вниз
Скачать: CL | DM;

Расстояние между строками в Memo   Найти похожие ветки 

 
Simonaln ©   (2001-12-26 11:32) [0]

Как узнать величину расстояния между строками в Tmemo в пикселях?


 
MBo ©   (2001-12-26 12:37) [1]

это зависит от размера шрифта.
если Font.height положительное число, то оно как раз дает высоту шрифта плюс доп. пропуск (internal leading) - т.е. высоту строки. Если отрицательное (по умолчанию)- без internal leading. Таким образом, можно контролировать расстояние
Memo1.Font.Height:=16; // не все значения доступны для не-TTF шрифтов
Видимо, есть и низкоуровневые методы.


 
Simonaln ©   (2001-12-26 12:43) [2]

В моем случае Font.height=-11, т.е. без пропуска. Это значит что высота строки 11 пикселей и пропуска нет вообще?


 
MBo ©   (2001-12-26 12:59) [3]

нет, высота строки больше(пропуск просто не учитывается). Какой пропуск - думаю, 3. Опытным путем - -11=14, -20=23, -6=9
хотя, казалось бы, должен зависеть от высоты шрифта


 
Simonaln ©   (2001-12-26 13:46) [4]

А как узнать длину строки текста в пикселях?


 
MBo ©   (2001-12-26 14:08) [5]

Сanvas мемо недоступен, так что можно воспользоваться, например,
приемом из FAQ. Вот пример для BitBtn
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1009301147&n=0
Есть и другие способы


 
Simonaln ©   (2001-12-26 14:29) [6]

А какие другие?


 
MBo ©   (2001-12-26 14:44) [7]

Увы, не знаю ;(
но этот метод отлично работает


 
MBo ©   (2001-12-26 14:59) [8]

можно еще попытаться через DrawTextEx с DT_CALCRECT, но принцип тот же.
В EM_ сообщениях я подходящего пока не увидел



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
3-42333
Марина
2001-12-10 11:07
2002.01.14
Скроллинг мыши


1-42489
AndrewK
2001-12-24 17:49
2002.01.14
Как организовать систему?


1-42416
SergeyVP
2001-12-27 06:21
2002.01.14
Thread


1-42418
Wetnose
2001-12-27 07:09
2002.01.14
KeyDown для ScrollBar a


1-42497
Victor
2001-12-25 19:40
2002.01.14
ColorDialog




   Наверх