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

Вниз

Как узнать прокрученность Memo?   Найти похожие ветки 

 
noclip ©   (2006-01-03 22:38) [0]

Извините за ламерский вопрос.
Сабж - имеется в виду как узнать на сколько прокручен Memo по обеим осям.
Мне надо это, чтобы определить позицию текстового курсора в моноширинном тексте относительно координат компонента.
Относительно текста - использую Memo1.CaretPos, а надо еще учесть прокрутку.

...Просто хочу в редакторе сделать autocomplete (а-ля сам delphi) через вот это и PopupMenu. Глупо, я понимаю... Но хочется именно так.


 
begin...end ©   (2006-01-04 11:08) [1]

> noclip ©   (03.01.06 22:38)

> Мне надо это, чтобы определить позицию текстового курсора
> в моноширинном тексте относительно координат компонента.

Сообщение EM_POSFROMCHAR предназначено для определения "клиентских" координат символа с заданным номером. Поэтому можно определить номер символа, возле которого находится курсор (свойство SelStart), а потом послать EM_POSFROMCHAR:

var
 P: TSmallPoint;
begin
 P := TSmallPoint(Memo.Perform(EM_POSFROMCHAR, Memo.SelStart, 0))
end

Только не забывайте проверять, не превышают ли полученные координаты размеров клиентской области -- такое может случиться, если курсор из-за прокрутки не виден.


 
noclip ©   (2006-01-04 22:00) [2]

THX



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

Форум: "WinAPI";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.038 c
3-1138806707
Serg2103
2006-02-01 18:11
2006.03.26
SCOPE_IDENTITY() не всегда корректно выполняется


15-1140936277
Fedotof
2006-02-26 09:44
2006.03.26
Где скачать прогу?


6-1134505291
(CHALING 32)S K i N E R
2005-12-13 23:21
2006.03.26
Сетевой чат!(Локальный)


15-1140343375
FH
2006-02-19 13:02
2006.03.26
регистрация на borland.com


3-1138637310
Ega23
2006-01-30 19:08
2006.03.26
Переменные типа image в скрипте





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский