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

XE里, TStringField 还是 ansi的的更多相关文章

  1. 原来windows里记事本的ansi编码就是GB2312啊,跟utf-8,unicode是不一样的。

    原来windows里记事本的ansi编码就是GB2312啊,跟utf-8,unicode是不一样的. 程序里的比如java的,Qt的string都是unicode的字符串,因此如果是你从文件中读取文字 ...

  2. Delphi XE里的StrPas要注意哦(要让StrPas知道哪里是字符串结束)

    废话不多说了,直接上例子解说: procedure TForm1.Button1Click(Sender: TObject);var  aa: array[0..1]of AnsiChar;  bb1 ...

  3. delphi7和XE下 获取路径

    XE里没有Application.Exename所以用paramstr(0); Str:=ParamStr(0); //自己全路径c:\555\qq.exe,可用于控制台Str:=ExpandFile ...

  4. XE下的FMX中压缩图片

    用FMX压缩图片,发现FMX里的canvas没有draw,stretch,cliprect类,FMX里程序创建时会自动引用FMX.Graphics, 而这个单元内的TBitmap类的Canvas没有S ...

  5. delphi常用快捷键(我自己经常使用的)

    代码编辑器: Home 回到当前行的头部 End 回到当前行的尾部 Insert 插入代码,覆盖后面的代码,(按回车无效), 再按撤回效果 Delete 删除 F1 双击一个单词后,按F1调用自带的L ...

  6. Delphi调用Android的.so文件(转)

    原地址:http://zhidao.baidu.com/link?url=fzqefMM44ljXA5BnAbkX44SapCUteyzlXFvGLKvukBivm9AB-w39P_h7eX1ty-G ...

  7. c++Builder XE6 MD5 加密算法 BASE64 URL 编码

    xe6,xe7 BASE64XE6 MD5 加密算法Delphifunction MD5(const texto: string): string; var idmd5: TIdHashMessage ...

  8. 使用vs的时候,遇到这个:当前不会命中断点 还没有为该文档加载任何符号

    一 http://stackoverflow.com/questions/2155930/fixing-the-breakpoint-will-not-currently-be-hit-no-symb ...

  9. FastReports_4.14.1 _Cliff手动安装

    首次编译frx15.dproj包的时候,会出错: [DCC Fatal Error] fs15.dpk(59): F1026 File not found: 'fs_ipascal.dcu'原因是因为 ...

随机推荐

  1. IT人士级别的划分

    IT领袖:年入过亿(例如任正非.马化腾.李彦宏.丁磊.马云等,包括期权股票以及投资理财等收入.) IT大哥:年入千万(级别次于以上几位大佬的公司老板,不缺钱,普遍对上一条里的人物羡慕嫉妒恨.) IT精 ...

  2. FJUT 奇怪的数列(线性选择算法)题解

    题意:找出无需数列中位数(偶数为两个中位数平均数向下取整) 思路:用nth_element(a + first,a + k,a+ end + 1)找出中位数,复杂度一般为O(n).这个STL能将 [ ...

  3. C# SQLite数据库操作

    WinCE项目开发   VS2008 自己写的SQLite数据库管理类代码如下: SQLiteManager.cs using System.Data; using System.Data.SQLit ...

  4. FPGA 概述

    概述 verilog HDL Verilog HDL基本结构 1 Verilog HDL程序是由模块构成的.每个模块嵌套在module和endmodule声明语句中. 2 每个Verilog HDL源 ...

  5. H5本地存储二

    众所周知,H5的storage有sessionstorage&localStorage,其中他们的共同特点是API相同 下面直接上代码,storage中的存储与删除: <!DOCTYPE ...

  6. GBDT 简述

    GBDT 全称 Gradient Boosting Decision Tree,梯度提升决策树. 梯度增强决策树的思想来源于两个地方,首先是增强算法(Boosting),然后是梯度增强(Gradien ...

  7. Jmeter自动化测试 POST请求和GET请求用if控制器,可以二次开发源码,将请求方式通过数据源传入,就不需要做多余的判断

    Jmeter自动化测试 POST请求和GET请求用if控制器,可以二次开发源码,将请求方式通过数据源传入,就不需要做多余的判断 目前常用的做法:

  8. vs2010的VCVARS32.BAT所在位置

    1. C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat 2. ZC:vs08 和 vs2010 安装好后, ...

  9. spring boot开发 静态资源加载不出来

    spring boot 1.5 版本之前 不拦截静态资源 springboot 2.x版本 拦截静态资源 private static final String[] CLASSPATH_RESOURC ...

  10. Codeforces 525A - Vitaliy and Pie

    525A - Vitaliy and Pie 思路:贪心+hashing. 代码: #include<bits/stdc++.h> using namespace std; string ...