delphi之Memo组件

Lines:这是Memo组件最常用,也是最有用的属性,它用来显示和保存Memo组件中的内容。 

  Scrollbar:很多组件都有这个属性。用于设定组件有否滚动条。它有四个值:SSNone表示既无水平滚动条,也无垂直滚动条;SSHorizontal表示只有水平滚动条;SSVertal表示只有垂直滚动条;SSBoth表示两者都有。当用户要显示的文本或其它的内容较多时,建议选用SSBoth。 

  WordWrap:用于设定Momo组件是否具有自动折行功能。 

  WantTabs:这个属性只在Memo、RichEdit和DBMemo组件中使用。通常在切换当前焦点控件时,我们通常使用Tab键。但在上述三种组件中,编辑文本时常用Tab键来跳过若干个空格使文本对齐,这时就会有冲突。所以应将WantTabs设置为True,这样子在组件内就可以使用Tab键来编辑文本。 

Memo组件常用的方法:

  1. 使用剪贴板(Clipboard)

  我们可以使用CutToClipboard、CopyToClipboard和PastFromClipboar这三种方法,实现将Memo组件中被选择文本剪切或复制到剪贴板上,以及将剪切板上的内容粘贴到Memo组件中。

  将Memo中的选中文本剪切到剪贴板的语句如下:

  if Memo1.SelLength>0 then

  2. 文本的添加

  利用Lines属性,可以增加、删除一行文本,也可以移动一行文本。下面的代码将文本添加到Memo中的最后一行:

  Memo1.Lines.Add('将文本添加到Memo中’);

  3. 文件的保存和装载

  我们可以将Memo组件中的文本保存成文本文件,也可以将文本文件装载到Memo中。这须要配合使用SaveDialog组件和OpenDialog组件。将Memo中的文本保存为文件的语句为:

  If SaveDialog1.Execute then   //打开保存对话框

  Memo1.Lines.SaveToFile(SaveDialog1.FileName);  //保存为文件

上边的语句先打开保存对话框,然后将Memo中的文本保存到一个文件中,文件名为我们在SaveDialog中输入的文本。

  在Memo中装载文本文件的语句为:

  if Opendialog1.Execute then

  Memo1.Lines.LoadFile(Opendialog1.FileName);

执行上边语句将打开Opendialog对话框,然后将选中的文本文件装载到Memo中。

memo组件的封转好的方法如下

{ TMemo }

public

  constructor Create(...); override; //

  destructor Destroy; override;      //

  procedure CopyToCliPBoard;         //复制

  procedure PasteFromClipboard;      //粘贴

  procedure CutToClipboard;          //剪切

  procedure ClearSelection;          //取消选择

  procedure SelectAll;               //全选

  procedure GoToTextEnd;             //到最后

  procedure GoToTextBegin;           //到开始

  procedure GotoLineEnd;             //到行尾

  procedure GoToLineBegin;           //到行首

  function GetPositionPoint(...): TPointF;    //获取当前位置

  procedure UnDo;                             //撤销

  procedure InsertAfter(...);                 //插入

  procedure DeleteFrom(...);                  //删除指定范围的内容

  function TextPosToPos(...): TCaretPosition; //根据指定的文本长度计算光标位置

  function PosToTextPos(...): Integer;        //TextPosToPos() 的反相计算

  property SelStart: Integer ...;             //选区文本的起始位置

  property SelLength: Integer ...;            //选区文本的长度

  property SelText: string ...;               //选区文本

  property CaretPosition: TCaretPosition ...; //输入光标的位置

  property LineWidth[LineNum: Integer]: Single ...; //获取指定行的宽度

  property UnwrapLines: TStrings ...;         //没有换行的原始文本集合; 在 WordWrap = False 时同 Lines

  property FontFill: TBrush ...;              //文本笔刷

  property SelectionFill: TBrush ...;         //选区笔刷

published

  property Cursor default crIBeam;       //鼠标光标

  property CanFocus default True;        //能否拥有焦点

  property DisableFocusEffect;           //是否禁用焦点特效

  property TabOrder;                     //Tab 序

  property AutoSelect: Boolean ...;      //是否在获取焦点时自动全选

  property CharCase: TEditCharCase ...;  //控制大小写的选项

  property Enabled;                      //是否可用

  property HideSelection: Boolean ...;   //?

  property Lines: TStrings ...;          //自动换行后的文本集合

  property MaxLength: Integer ...;       //最大长度

  property ReadOnly: Boolean ...;        //是否只读

  property OnChange: TNotifyEvent ...;         //有改变时

  property OnChangeTracking: TNotifyEvent ...; //发生在 OnChange 之前的事件

  property WordWrap: Boolean ...;        //是否自动换行

  property Font: TFont ...;              //字体

  property Text: string ...;             //内容

  property TextAlign: TTextAlign ...;    //文本对齐方式

  property StyleLookup;                  //指定样式

end;


转载于:https://my.oschina.net/kavensu/blog/196226

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值