Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

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

 
Wolfram ©   (2005-10-31 20:21) [0]

У меня есть ряд программ, использующих компонент TMemo. В строке состояния я показываю позицию курсора в редакторе. Естественно, мне нужно постоянно отслеживать перемещение курсора. Сделать это неудобно через события компонента, т.к. надо слишком много событий обрабатывать: нажатие любой клавиши, щелчки мыши, перемещение мыши, изменение текста (OnChange). Есть ли более простой способ следить за курсором в Memo?


 
Dmitrij_K   (2005-10-31 21:14) [1]

procedure CaretPos(H: THandle; var L,C : Word);  
begin  
 L := SendMessage(H,EM_LINEFROMCHAR,-1,0);  
 C := LoWord(SendMessage(H,EM_GETSEL,0,0)) - SendMessage(H,EM_LINEINDEX,-1,0);  
end;  

procedure TForm1.Button1Click(Sender: TObject);  
var  
 LineNum,ColNum : Word;  
begin  
 CaretPos(Memo1.Handle,LineNum,ColNum);  
 Edit1.Text := IntToStr(LineNum) + "  " + IntToStr(ColNum);  
end;

DRKB решает


 
Wolfram ©   (2005-10-31 21:34) [2]

Это совсем не то, что мне нужно. Я знаю как узнать позицию курсора (кстати, можно проще :) ), я не хочу делать миллион процедур для обработки событий. Короче, мне нужно знать, когда когда курсор изменил свою позицию.



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

Текущий архив: 2005.11.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.054 c
3-1129226171
rainface
2005-10-13 21:56
2005.11.27
DBgrig переход на следующий столбец


14-1131115835
ArtemESC
2005-11-04 17:50
2005.11.27
Загрузочный сектор


3-1129038011
stepan_mk
2005-10-11 17:40
2005.11.27
ODAC & ORAARRAY


2-1131432412
makvell
2005-11-08 09:46
2005.11.27
Отчеты...


14-1131157454
Доколи
2005-11-05 05:24
2005.11.27
Доколи будут уменьшаться техпроцессы ?