Delphi文本编辑器的设计(二)

2008-02-23 07:17:29来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

4.3.1 TEdit 部件 

TEdit部件是一个标准的编辑框,用户可在编辑框中输入数据。编辑框也可向用户显示数据。编辑时只能读写一行信息。

   TEditText属性存放着用户输入的数据或向用户显示的数据,Modified属性用以标识 Text的数据是否改变,可通过设置Maxlength属性值来限制用户输入字符的个数量,CharCase

属性可定义编辑框中字符的大小写。如果设计者想禁止用户输入,可将ReadOnly属性设置成真值。编辑框也能用做密码输入框。通过设置PassWordChar 属性的值,可将用户输入的字符在编辑框中显示成指定的字符,如"*"号等。编辑框还可以进行字符选择操作、粘贴、复制和剪切操作。 

4.3.2 TMemo 部件 

TMemo部件与TEdit部件类似,能向用户显示数据,用户也可输入数据。与TEdit 部件

不同的是,TMemo部件可以处理多行文本,因此主要用于编辑文件。

  TMemoText属性只能在运行时才能访问。Modified属性用以标识Text的数据是否改

变,通过设置MaxLength属性值来限制用户输入字符的数量。

  如果把文本当成一个整体进行访问,可使用Text属性;若想逐行访问,则要使用Lines属性。Lines属性能对文件更方便地进行访问。LinesTStrings类型的,因此可使用Add Delete方法,例如在Memo1中加入一行字符串的代码如下:  

Memo1.Lines.Add('Another line is added'); 

通过Lines属性可以方便地把文件读入部件中,例程中使用下面的代码将文件读入Memo1: 

Memo1.Lines.loadFromFile(Filename). 

TMemo 部件中剪切、复制、粘贴文本非常方便,只需使用 CutTocliPBoard CopyToClipBroad,PasteFromClipBoard方法,其代码如下: 

  Memo1.CopyToClipboard

  Memo1.CutToClipboard

  Memo1.PasteFromClipboard 

TMemo有一些属性,用以控制文本的显示效果。ScrollBars属性可以定义部件的水平滚动条和垂直滚动条。当文件字体改变时,使用AutoSize属性可使部件大小做相应的调整。设置WordWrap属性可以实现自动换行。

  例程中Edit|WordWrap菜单项提供了设置WordWrap的功能,并可根据WordWrap的值决定滚动条的形式。当WordWrap为真时,不需要水平滚动条, 并在菜单中作出检查记号。

其代码如下: 

 procedure TEditForm.SetWordWrap(Sender: TObject);

begin

with Memo1 do

begin

WordWrap := not WordWrap;

if WordWrap then

ScrollBars := ssVertical else

ScrollBars := ssBoth;

WordWrap1.Checked := WordWrap;

end;

SetEditRect;

end; 

TMemo部件提供了一组关于选择文本的属性和方法。如果想在部件成为当前控件时自动选择文本,可设置 AutoSelect 属性。运行时可用SelectAll 方法选中部件的全部文本。 Selstart属性返回选中文本的开始位置,SelText 包含着被选中的文本。SelLength属性返回选中文本的长度,这两个属性可用于字符串的查找和替换。下一节将详细讨论。

  TMemoModified属性是一个运行时才能得到的属性,可判断部件被创建时或Modified属性最后一次设置成假值之后,部件上的文本是否修改。如果修改了,Modified 将设成真值,反之假值。

  例程中在关闭文件时将测试文件的modified属性,如果文件修改后尚未保存, 将出现对话框,询问用户是否保存文件,其代码如下: 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Delphi快速入门(七)

下一篇:Delphi文本编辑器的设计(一)