Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- procedure TBeyluxe.SendTxtBeyluxe(RichEditTxt: TRichEdit);
- var
- memStream: TMemoryStream;
- strList: TStringList;
- sText: String;
- start_pos,end_pos,txt_len: integer;
- begin
- if RmRichTxtHwnd <> 0 then
- begin
- memStream := TMemoryStream.Create;
- strList := TStringList.Create;
- try
- RichEditTxt.Lines.SaveToStream( memStream );
- memStream.Position := 0;
- strList.LoadFromStream( memStream );
- sText:= strList.GetText;
- txt_len:= SendMessage(RmRichTxtHwnd, WM_GETTEXTLENGTH, 0, 0);
- If txt_len > 0 Then
- begin
- SendMessage(RmRichTxtHwnd, EM_GETSEL, start_pos, end_pos);
- SendMessage(RmRichTxtHwnd, EM_SETSEL, 0, txt_len);
- SendMessage(RmRichTxtHwnd, WM_CUT, 0, 0);
- SendMessage(RmRichTxtHwnd,WM_SETTEXT,Length(sText),Integer(PChar(sText)));
- PostMessage(RmRichTxtHwnd, WM_KEYDOWN, VK_RETURN,0);
- PostMessage(RmRichTxtHwnd, WM_KEYUP, VK_RETURN,0);
- Sleep(100);
- SendMessage(RmRichTxtHwnd, WM_PASTE, 0, 0);
- SendMessage(RmRichTxtHwnd, EM_SETSEL, txt_len, txt_len);
- end
- else
- begin
- SendMessage(RmRichTxtHwnd,WM_SETTEXT,Length(sText),Integer(PChar(sText)));
- PostMessage(RmRichTxtHwnd, WM_KEYDOWN, VK_RETURN,0);
- PostMessage(RmRichTxtHwnd, WM_KEYUP, VK_RETURN,0);
- end
- finally
- memStream.Free;
- strList.Free;
- end;
- end;
- counter:= 0;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement