Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.044 c
2-1131624440
ВоваВова
2005-11-10 15:07
2005.11.27
Запуск программы в одном экземпляре


4-1127825453
DELORAC
2005-09-27 16:50
2005.11.27
Как отловить нажатие комбинации клавиш в системе?


3-1129360635
Иванов__
2005-10-15 11:17
2005.11.27
Ош. "Could not convert variant of type (NULL) into type (String)"


4-1127404057
FunkyByte
2005-09-22 19:47
2005.11.27
Перехват API-функции


6-1123928891
0n!k
2005-08-13 14:28
2005.11.27
clientsocket no API ASync Lookup




   Наверх