zoukankan      html  css  js  c++  java
  • Delphi XE2 之 FireMonkey 入门(40) 控件基础: TMemo


    值得注意的变化:

    1、其父类 TScrollBox 的许多特性也很有用处, 如:
       Memo1.UseSmallScrollBars := True;
    

    2、内部使用了一个栈列表管理动作, 现在可以执行多步撤销(UnDo).

    3、使用了一个新的结构体 TCaretPosition 来描述当前位置, 并为该结构提供了一个公用的快速构造函数 ComposeCaretPos().
       TCaretPosition = record
         Line, Pos: Integer;
       end;
    

    4、提供枚举属性 CharCase 控制大小写.
       Memo1.CharCase := TEditCharCase.ecUpperCase;
    

    5、提供布尔属性 AutoSelect 决定获取焦点时是否自动全选.

    6、现在的 Lines 属性读取的是自动换行后的文本集合; 原始集合用 UnwrapLines 读取.
       Memo1.CharCase := TEditCharCase.ecUpperCase;
    

    7、还提供了 InsertAfter()、DeleteFrom() 等新方法.

    { 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;
    

  • 相关阅读:
    C#连接手机安装软件和发送信息
    asp.net 简单分页打印
    asp.net 下载的几种方式
    js 刷新后不提示并保留控件状态
    JAVA 基础编程练习题2 【程序 2 输出素数】
    JAVA 基础编程练习题1 【程序 1 不死神兔】
    setMaxActive和setMaxWait方法
    java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0
    java.lang.RuntimeException: org.dom4j.DocumentException: 1 字节的 UTF-8 序列的字节 1 无效。
    HTML DOM firstChild lastChild nextSibling previousSibling 属性_获取属性值的undefined问题
  • 原文地址:https://www.cnblogs.com/del/p/2202002.html
Copyright © 2011-2022 走看看