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

Число строк текста в видимой области RichEdit   Найти похожие ветки 

← →
perseptron   (2003-02-11 15:33) [0]

Как подсчитать сабж? (для случаев с одинаковой и с различной высотой шрифта)


← →
MBo ©   (2003-02-11 15:47) [1]

С помощью EM_*** сообщений найти номер первой видимой строки,
номер символа в левом нижнем углу и найти номер строки, содержащщй его, т.е. нижней.


← →
perseptron   (2003-02-11 15:58) [2]

Извини MBo, но если б я знал как ЭТО искать я бы не задавал вопрос. Обьясни пожалуста по-подробнее.


← →
MBo ©   (2003-02-11 16:13) [3]

WinSDK Help
набираешь em и видишь кучу сообщений, читаешь все, выбираешь нужное.


← →
perseptron   (2003-02-11 17:00) [4]

Кучу слабо сказано. Ну ладно... увидимся на форуме через месяц (я пошел читать).


← →
perseptron   (2003-02-11 17:39) [5]

Я тут поискал... короче, с помощью EM_GETFIRSTVISIBLELINE я могу найти первую видимую строку, с помощью EM_GETLINECOUNT количество всех строк, а поскольку у меня в програме должно выполнятся условие: - последняя строка в видимой области = последней строке в всем Edit"e то можна подсчитать сабж. Я прав?
Но куда пихать ети EM_*** ? Я раньше никогда с ними не работал.
Подскажи хоть что читать если уж в лом дать конкретный ответ (хорошо бы с экзамплами, ато в WinSDK Help чето с этим не густо)


← →
MBo ©   (2003-02-11 17:55) [6]

если уж в лом самому разобраться, держи

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-12 13:39) [7]

Делфи выдает Undeclared identifier: "EM_EXCHARFROMPOS" ( и действительно в winSDK help он есть, а в модуле Messages он почемуто не описан???) посему пришлось использовать EM_CHARFROMPOS (с ним все работает, спасибо за функцию). И еще зачем RE.ClientHeight -2 (пробовал +2 никакой разницы)


← →
MBo ©   (2003-02-12 14:26) [8]

uses richedit



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

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



Память: 0.46 MB
Время: 0.012 c
4-76224
XAli
2003-01-11 11:05
2003.02.24
Как програмно без сообщений запустить regsvr32.exe hasp32.ocx


1-75937
Kolius
2003-02-14 17:40
2003.02.24
алгоритм Безье


1-75850
Ahmad K
2003-02-13 14:34
2003.02.24
Еще раз про скины...


3-75753
denis24
2003-02-05 16:41
2003.02.24
добавление записи


3-75775
SergeyM
2003-02-06 08:10
2003.02.24
Обновить состояние базы данных




   Наверх