![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Число строк текста в видимой области RichEdit
perseptron © (2003-02-11 15:33:00)Как подсчитать сабж? (для случаев с одинаковой и с различной высотой шрифта)
MBo (2003-02-12 14:26:00) [1]uses richedit
perseptron (2003-02-12 13:39:00) [2]Делфи выдает Undeclared identifier: "EM_EXCHARFROMPOS" ( и действительно в winSDK help он есть, а в модуле Messages он почемуто не описан???) посему пришлось использовать EM_CHARFROMPOS (с ним все работает, спасибо за функцию). И еще зачем RE.ClientHeight -2(пробовал +2 никакой разницы)
MBo (2003-02-11 17:55:00) [3]если уж в лом самому разобраться, держи
function GetRichEditVisibleLinesCount(RE:TRichEdit):Integer;
var
p:tpoint;
begin
p:=point(2, RE.ClientHeight-2);
Result:=SendMessage(Re.Handle,EM_EXLINEFROMCHAR,0,
SendMessage(RE.Handle,EM_CHARFROMPOS,0,Integer(@p)))-
SendMessage(RE.Handle,EM_GETFIRSTVISIBLELINE,0,0);
end;
perseptron (2003-02-11 17:39:00) [4]Я тут поискал... короче, с помощью EM_GETFIRSTVISIBLELINE я могу найти первую видимую строку, с помощью EM_GETLINECOUNT количество всех строк, а поскольку у меня в програме должно выполнятся условие: - последняя строка в видимой области = последней строке в всем Edit"e то можна подсчитать сабж. Я прав?
Но куда пихать ети EM_*** ? Я раньше никогда с ними не работал.
Подскажи хоть что читать если уж в лом дать конкретный ответ (хорошо бы с экзамплами, ато в WinSDK Help чето с этим не густо)
perseptron (2003-02-11 17:00:00) [5]Кучу слабо сказано. Ну ладно... увидимся на форуме через месяц (я пошел читать).
MBo (2003-02-11 16:13:00) [6]WinSDK Help
набираешь em и видишь кучу сообщений, читаешь все, выбираешь нужное.
perseptron (2003-02-11 15:58:00) [7]Извини MBo, но если б я знал как ЭТО искать я бы не задавал вопрос. Обьясни пожалуста по-подробнее.
MBo (2003-02-11 15:47:00) [8]С помощью EM_*** сообщений найти номер первой видимой строки,
номер символа в левом нижнем углу и найти номер строки, содержащщй его, т.е. нижней.