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

Posted fansizhe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用组件的使用- 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;

 

以上是关于常用组件的使用- TRichEdit文本内容显示组件的主要内容,如果未能解决你的问题,请参考以下文章

RichEdit 垂直文本对齐

Delphi 11 TRichEdit 超链接停止工作

更改某些非文本字符的字体时,如何使 TRichEdit 在 Windows 7 上表现得像写字板?

如何从 TRichEdit 控件中完全删除选择栏?

:常用组件

flutter(四,常用组件)