Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Вниз

Расстояние между строками в 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_ сообщениях я подходящего пока не увидел




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.045 c
4-42612           sandman               2001-11-10 20:34  2002.01.14  
Отсылка сообщения через OLE


14-42573          РУС                   2001-11-11 20:35  2002.01.14  
Стоит ли ставить Win XP?


1-42413           Andrey196             2001-12-26 21:38  2002.01.14  
Как фон Labela сделать прозрачным?


3-42359           a1st                  2001-12-11 13:49  2002.01.14  
Помогите восстановить primary-индексы


3-42371           Romul                 2001-12-11 15:06  2002.01.14  
DB Lib для Delphi