• XE里, TStringField 还是 ansi的


    { TStringField }
    
      TStringField = class(TField)
      private
        FFixedChar: Boolean;
        FTransliterate: Boolean;
      protected
        class procedure CheckTypeSize(Value: Integer); override;
        function GetAsBCD: TBcd; override;
        function GetAsBoolean: Boolean; override;
        function GetAsDateTime: TDateTime; override;
        function GetAsSingle: Single; override;
        function GetAsFloat: Double; override;
        function GetAsExtended: Extended; override;
        function GetAsInteger: Longint; override;
        function GetAsLargeInt: Largeint; override;
        function GetAsSQLTimeStamp: TSQLTimeStamp; override;
        function GetAsString: string; override;
        function GetAsAnsiString: AnsiString; override;
        function GetAsVariant: Variant; override;
        function GetDataSize: Integer; override;
        function GetDefaultWidth: Integer; override;
        procedure GetText(var Text: string; DisplayText: Boolean); override;
        function GetValue(var Value: AnsiString): Boolean;
        procedure SetAsBCD(const Value: TBcd); override;
        procedure SetAsBoolean(Value: Boolean); override;
        procedure SetAsDateTime(Value: TDateTime); override;
        procedure SetAsSingle(Value: Single); override;
        procedure SetAsFloat(Value: Double); override;
        procedure SetAsExtended(Value: Extended); override;
        procedure SetAsInteger(Value: Longint); override;
        procedure SetAsLargeInt(Value: Largeint); override;
        procedure SetAsSQLTimeStamp(const Value: TSQLTimeStamp); override;
        procedure SetAsString(const Value: string); override;
        procedure SetAsAnsiString(const Value: AnsiString); override;
        procedure SetVarValue(const Value: Variant); override;
      public
        constructor Create(AOwner: TComponent); override;
        property Value: AnsiString read GetAsAnsiString write SetAsAnsiString;
      published
        property EditMask;
        property FixedChar: Boolean read FFixedChar write FFixedChar default False;
        property Size default 20;
        property Transliterate: Boolean read FTransliterate write FTransliterate default True;
      end;
    
    { TWideStringField }
    
      TWideStringField = class(TStringField)
      protected
        class procedure CheckTypeSize(Value: Integer); override;
        procedure CopyData(Source, Dest: Pointer); override;
        function GetAsAnsiString: AnsiString; override;
        function GetAsString: string; override;
        function GetAsVariant: Variant; override;
        function GetAsWideString: UnicodeString; override;
        function GetDataSize: Integer; override;
        procedure GetText(var Text: string; DisplayText: Boolean); override;
        function GetValue(var Value: UnicodeString): Boolean;
        procedure SetAsAnsiString(const Value: AnsiString); override;
        procedure SetAsString(const Value: string); override;
        procedure SetVarValue(const Value: Variant); override;
        procedure SetAsWideString(const Value: UnicodeString); override;
      public
        constructor Create(AOwner: TComponent); override;
        property Value: UnicodeString read GetAsWideString write SetAsWideString;
      end;
  • 相关阅读:
    单表查询和多表连接查询哪个效率更快
    高并发和秒杀系统设计
    微服务框架学习三:服务通信框架介绍
    微服务框架学习一:架构介绍
    微服务框架学习二:Http调用
    支付相关的学习资源
    service mesh学习规划
    智齿客服网页端接入文档V2.3
    VUE请求本地数据的配置json-server
    webpack学习
  • 原文地址:https://www.cnblogs.com/CodeGear/p/4542709.html
Copyright © 2020-2023  润新知