Advertisement
Guest User

Untitled

a guest
May 28th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.48 KB | None | 0 0
  1. procedure TBeyluxe.SendTxtBeyluxe(RichEditTxt: TRichEdit);
  2. var
  3.  memStream: TMemoryStream;
  4.  strList: TStringList;
  5.  sText: String;
  6.  start_pos,end_pos,txt_len: integer;
  7. begin
  8.  
  9. if RmRichTxtHwnd <> 0 then
  10.   begin
  11.     memStream := TMemoryStream.Create;
  12.     strList := TStringList.Create;
  13.     try
  14.       RichEditTxt.Lines.SaveToStream( memStream );
  15.       memStream.Position := 0;
  16.       strList.LoadFromStream( memStream );
  17.       sText:= strList.GetText;
  18.       txt_len:= SendMessage(RmRichTxtHwnd, WM_GETTEXTLENGTH, 0, 0);
  19.       If txt_len > 0 Then
  20.           begin
  21.             SendMessage(RmRichTxtHwnd, EM_GETSEL, start_pos, end_pos);
  22.             SendMessage(RmRichTxtHwnd, EM_SETSEL, 0, txt_len);
  23.             SendMessage(RmRichTxtHwnd, WM_CUT, 0, 0);
  24.             SendMessage(RmRichTxtHwnd,WM_SETTEXT,Length(sText),Integer(PChar(sText)));
  25.             PostMessage(RmRichTxtHwnd, WM_KEYDOWN, VK_RETURN,0);
  26.             PostMessage(RmRichTxtHwnd, WM_KEYUP, VK_RETURN,0);
  27.             Sleep(100);
  28.             SendMessage(RmRichTxtHwnd, WM_PASTE, 0, 0);
  29.             SendMessage(RmRichTxtHwnd, EM_SETSEL, txt_len, txt_len);
  30.           end
  31.           else
  32.           begin
  33.  
  34.             SendMessage(RmRichTxtHwnd,WM_SETTEXT,Length(sText),Integer(PChar(sText)));
  35.             PostMessage(RmRichTxtHwnd, WM_KEYDOWN, VK_RETURN,0);
  36.             PostMessage(RmRichTxtHwnd, WM_KEYUP, VK_RETURN,0);
  37.           end
  38.     finally
  39.       memStream.Free;
  40.       strList.Free;
  41.     end;
  42.   end;
  43.   counter:= 0;
  44. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement