提个问题,大家帮忙解决解决。(100分)

  • 主题发起人 主题发起人 liyinwei
  • 开始时间 开始时间
L

liyinwei

Unregistered / Unconfirmed
GUEST, unregistred user!
TADOQuery 有个这种方法 FieldByName('FieldName').AsString;
或者
ADOQuery1.FieldByName('FieldName').AsInteger;
ADOQuery1.FieldByName('FieldName').AsBoolean;
ADOQuery1.FieldByName('FieldName').AsDateTime;
关键是AsString、AsInteger、AsBoolean等是怎么实现的?
我看了 TADOQuery 的源码,但是水平有限,看不懂。
我的目的是想写一个类,用来读取文本信息,然后处理文本信息,需要输出的时候也可以象上面FieldByName那样,允许选择输出为String、Integer、Boolean、TDateTime等数据类型。
请高手说说如何实现象FieldByName那样的,允许选择性的输出不同的数据类型的数据。
 
只好自己顶一下。 :(
 
重载
编程很基本的一个概念
 
其实就是它的几个属性值而已,
TXXX = class
FValue: string;
private
function GetInt: Integer;
procedure SetInt(const Value: Integer);
public
property AsString : string read FValue write FValue;
property AsInteger: Integer read GetInt write SetInt;
end;

function TXXX.GetInt: Integer;
begin
Result := StrToIntDef(FValue,0);
end;

procedure TXXX.SetInt(const Value: Integer);
begin
FValue := IntToStr(Value);
end;
 
谢谢 来如风 我看明白了。
问题解决了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
405
swish
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部