Вниз
Скачать: CL | DM;

Проблема при вставке текста из буффера обмена в Memo   Найти похожие ветки 

 
FunkyByte ©   (2005-10-29 18:29) [0]

Доброго всем времени суток, уважаемые мастера. Как можно сделать так, чтобы при вставке текста из буфера обмена в Memo через всплывающее меню текст вставлялся там, где находился курсор мыши при вызове всплывающего меню, а не там, где в этот момент находился текстовый курсор? Заранее благодарен.


 
изобретатель_   (2005-10-29 22:10) [1]

Перед вызовом контекстного меню  переставляй текстовый курсор в нужное место:)


 
FunkyByte ©   (2005-10-30 01:16) [2]

А как это сделать? (вручную не предлагать)


 
Джо ©   (2005-10-30 04:21) [3]


> [2] FunkyByte ©   (30.10.05 01:16)
> А как это сделать? (вручную не предлагать)

Что значит вручную? Вот так, например, некошерно?

procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);

 function CharFromPos: Dword;
 var
   Pt: DWORD;
 begin
   // Low word - X, high word - Y
   Pt := (Y * $10000) or (X and $FFFF);
   Result := (SendMessage((Sender as TMemo).Handle,EM_CHARFROMPOS,0,Pt));
   // charpos in low word
   Result := Result and $0000FFFF;
 end;

begin
 if Button = mbRight then
   (Sender as TMemo).SelStart := CharFromPos
end;


 
FunkyByte ©   (2005-10-30 22:14) [4]


> Что значит вручную?

Вручную переставить текстовый курсор - это значит подвести курсор мыши к тому месту, куда надо переставить текстовый курсор, и щёлкнуть по левой почке мышки :-)


> Вот так, например, некошерно?

То, что надо. Большое спасибо.



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

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



Память: 0.46 MB
Время: 0.029 c
14-1130330178
Megabyte
2005-10-26 16:36
2005.11.20
Чужой код


6-1123226386
stepan_mk
2005-08-05 11:19
2005.11.20
FTP & INDY


2-1130455887
Blur
2005-10-28 03:31
2005.11.20
Как сделать имеджу небольшой блюр ?


9-1120589253
Dgt
2005-07-05 22:47
2005.11.20
Просчет теней в Glscene uses vertex lighting


2-1130589369
Herbariun
2005-10-29 16:36
2005.11.20
Длина строки




   Наверх