本文整理自网络,侵删。
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;
相关阅读 >>
Delphi 获取适合微信使用的当前日期,以int64表示,是当前时间和1970-01-01 00:00:00之间的秒差
Delphi xe10 android安卓 移动端 messagedlg 用法
更多相关阅读请进入《Delphi》频道 >>