Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Передвинуть курсор в мемо


Неуч ©   (2006-04-24 11:16:00) 

Здравствуйте мастера! Ниже приведенный код по клику правой кнопкой мыши передвигает курсор в richedit'e в позицию где находится курсор мыши.
procedure Tform1.richedit1MouseDown(Sender: TObject;Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 var p:TPoint;
 begin
  if Button =mbRight  then begin
     p:=Point(x,y);
    richedit1.SelStart :=  richedit1.Perform(EM_CHARFROMPOS,0,LongInt(@p));
 end;
end;


Пытаюсь сделать тоже, для Мемо. Делаю так:

procedure Tform1.memo1MouseDown(Sender: TObject;Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 var p:TPoint;
 begin
  if Button =mbRight  then begin
     p:=Point(x,y);
    memo1.SelStart :=  memo1.Perform(EM_CHARFROMPOS,0,LongInt(@p));
 end;
end;


И это неработает. Как заставить Tmemo выполнять сабжевое действие?
Заранее спасибо.


Неуч   (2006-04-24 14:44:00) [1]

lParam = MAKELPARAM(x, y)

Понятно, спасибо


MBo   (2006-04-24 11:32:00) [2]

нужно прочитать в MSDN или WinSDK-хелпе о различии в работе этого сообщения для Rich и Memo


Наверх

Титульная страница Поиск, карта сайта Написать письмо