Lines:这是Memo组件最经常使用,也是最有用的属性,它用来显示和保存Memo组件中的内容。 ide
Scrollbar:不少组件都有这个属性。用于设定组件有否滚动条。它有四个值:SSNone表示既无水平滚动条,也无垂直滚动条;SSHorizontal表示只有水平滚动条;SSVertal表示只有垂直滚动条;SSBoth表示二者都有。当用户要显示的文本或其它的内容较多时,建议选用SSBoth。 字体
WordWrap:用于设定Momo组件是否具备自动折行功能。 spa
WantTabs:这个属性只在Memo、RichEdit和DBMemo组件中使用。一般在切换当前焦点控件时,咱们一般使用Tab键。但在上述三种组件中,编辑文本时经常使用Tab键来跳过若干个空格使文本对齐,这时就会有冲突。因此应将WantTabs设置为True,这样子在组件内就能够使用Tab键来编辑文本。 事件
Memo组件经常使用的方法:ip
1. 使用剪贴板(Clipboard)string
咱们能够使用CutToClipboard、CopyToClipboard和PastFromClipboar这三种方法,实现将Memo组件中被选择文本剪切或复制到剪贴板上,以及将剪切板上的内容粘贴到Memo组件中。it
将Memo中的选中文本剪切到剪贴板的语句以下:io
if Memo1.SelLength>0 thenast
2. 文本的添加function
利用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;