分享

Delphi richedit获取选中文字

 博览网文 2016-06-29
function TForm1.GetSendText(RichEdit: TExRichEdit): string;
var
  MsgListInfo: TStrings;
  i, m, n: integer;
  x, y: LongInt;
  WideStr: WideString;
begin
  Result := '';
  MsgListInfo := RichEdit.Lines;
  Y := SendMessage(RichEdit.Handle, EM_LINEFROMCHAR, MsgList.SelStart, 0); //得到rich光标所在行与列
  X := RichEdit.SelStart - SendMessage(RichEdit.Handle, EM_LINEINDEX, Y, 0);
  if RichEdit.SelLength = 0 then
  begin
    for i := y downto 0 do
    begin
      m := Pos('[', MsgListInfo.Strings[i]);
      n := Pos(']', MsgListInfo.Strings[i]);
      if (m = 1) and (n = 21) then
      begin
        Result := Copy(MsgListInfo.Strings[i], m + 1, n - 2);
        Break;
      end;
    end;
  end else
  begin
    WideStr := MsgListInfo.Strings[y];
    Result :=Copy(WideStr, x + 1, RichEdit.SelLength);
  end;
end;

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多