Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.02.24;
Скачать: [xml.tar.bz2];

Вниз

Число строк текста в видимой области 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 вся ветка

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

Наверх





Память: 0.46 MB
Время: 0.04 c
14-76176
Tsr
2003-02-04 18:07
2003.02.24
О вреде сигарет


1-75948
Gaber
2003-02-05 12:42
2003.02.24
Отчет Word


1-76030
Maxik777
2003-02-13 16:00
2003.02.24
И снова о выборе директории


1-75900
Dan
2003-02-14 08:41
2003.02.24
Возведение числа в степень


7-76197
tornovsk
2002-12-23 19:51
2003.02.24
UNIX programming





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский