常用组件的使用(4)- TRichEdit文本内容显示组件

TRichEdit组件通常是用来显示文本文件或格式文件的内容的,由于编辑功能有限,因此只适合用来显示文件的内容,而不适合用来编辑文件。

属性:

1、Lines属性:用来编辑单行添加文本或删除文本

2、HideSelection属性:为true是,组件有焦点,false则无焦点

方法:

1、Clear方法:删除文本

2、FindText方法:查找指定的文本

示例:

查找RichEdit组件指定的字符串

 

ibegin:= richedit1.FindText(Edit1.Text,ibegin,Length(RichEdit1.text),[stMatchCase]);
  if ibegin <> -1 then
  begin
    RichEdit1.SetFocus;
    RichEdit1.SelStart:=ibegin;
    RichEdit1.SelLength:=1;
    inc(ibegin);
  end
  else if ibegin = -1 then
  begin
    ibegin:= 0;
    Application.MessageBox('没找到变量','提示',MB_OKCANCEL+mb_iconinformation);

  end;

3、LoadFromFile方法:按指定的文件路径将文本内容载入到TRichEdit组件中

示例:将文本文本的内容载入到TRichEdit组件中

 

procedure TForm1.Button1Click(Sender: TObject);
begin
  if OPenDialog1.Execute then
  begin
    RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName);
  end;
end;

带滚动控件

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  with RichEdit1 do
  begin
    SelStart:= Length(text);
    Perform(EM_SCROLL,0,0);
  end;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
  with RichEdit1 do
  begin
    Perform(EM_SCROLL,SB_LINEDOWN,0);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName);
  end;
end;

end.

实用:去掉TRichEdit组件中每行的硬回车,因为文本通常来说都是直接打开的,所以格式上会需要有些调整

Delphi中一个回车符相当于#13#10两个字符组成,TRichEdit组件中所有的内容都是存储在一个TString类型当中,所以想要去掉所有的硬回车,只需将TRichEdit组件中

的多个Line 组合成一个Line,再从中取出硬回车即可。

procedure TForm1.Button1Click(Sender: TObject);
var
  Str:string;
  I:Integer;
begin
  for i:=0 to RichEdit1.Lines.Count- 1 do
  begin
    Str:= Str+ RichEdit1.Lines[i];
  end;
  while pos(#13#10,Str)<> 0 do
    Delete(Str,pos(#13#10,Str),1);
  RichEdit1.Text:= Str;
end;
原文地址:https://www.cnblogs.com/fansizhe/p/12815707.html