如何在Delphi中用代码来完成计算字段的创建
来源:互联网 发布:人物标签的词语网络语 编辑:程序博客网 时间:2024/05/29 18:48
以前CSDN上有好多人问过这个问题,但是好象没有人给出满意的答案。我也是经过好长时间摸索才找到答案,现在在这给大家分享:
procedure TForm1.FormCreate(Sender: TObject);
var
NewField:TField;
i:integer;
begin
//表中有两字段SName,Birth,现在我们动态生成一个计算字段Age,显示出年龄
NewField:=TStringField.Create(ADOTable);
//创建一个TStringField类型的字段
ADOTable.Close;
for i:=0 to ADOTable.Fields.Count-1 do
ADOTable.Fields[0].Free;//释放所有的静态字段
for i:=0 to ADOTable.FieldDefs.Count-1 do
ADOTable.FieldDefs.Items[i].CreateField(ADOTable);
//根据FieldDefs的字段信息动态的生成静态字段
NewField.Size:=5;
NewField.FieldName:='Age';
NewField.FieldKind:=fkCalculated;
//设置这个这字段为计算字段
NewField.DataSet:=ADOTable;
//把这个字段加到ADOTable上
ADOTable.Open;
end;
procedure TForm1.ADOTableCalcFields(DataSet: TDataSet);
var
YY1,YY2,MM,DD:Word;
TmpDate:TDate;
begin
DecodeDate(Date,YY1,MM,DD);
TmpDate:=DataSet.FieldByName('Birth').AsDateTime;
DecodeDate(TmpDate,YY2,MM,DD);
DataSet.FieldByName('Age').AsString:=IntToStr(YY1-YY2)+'岁';
//在OnCalField中显示出年龄
end;
以上是我用ADO写的。一开始我用BDE写的,也一样都可以通过.
- 如何在Delphi中用代码来完成计算字段的创建
- 如何在Delphi中用代码来完成计算字段的创建
- 如何在Delphi中用代码来完成计算字段的创建
- 在Delphi中用ADSI创建IIS的虚拟目录
- 如何在VF中用代码创建方捷方式
- 在delphi中用消息来向另一个程序发送消息
- 完成DELPHI的不可能功能:宏替换!(如何根据字符串来创
- 在Delphi 中用程序实现自定义窗体的创建和显示顺序(1)
- 在Delphi 中用程序实现自定义窗体的创建和显示顺序(2)
- 如何在Drupal7中用代码批量创建节点、评论和分类
- 开发中用来复制粘贴的代码
- Delphi编辑器的“代码完成”功能
- 在IDEA中用maven来创建一个springMVC项目
- 【Unity】讲解如何在Unity的Inspector面板中用滑动条来控制变量的大小
- 如何在delphi的代码中加入一个过程
- 如何在程序中执行动态生成的Delphi代码
- 如何在C#中用弹出窗口来对DataGrid的某一列进行修改
- 15.2.6.1. 如何在InnoDB中用不同的API来使用事务
- .NET 脚本(二)
- 2004全球IPv6高峰论坛参会总结
- 关于 mysql5 改密码后不能登录问题的解答
- [原创]在 Visual C++ 中使用内联汇编
- Delphi中的类和对象
- 如何在Delphi中用代码来完成计算字段的创建
- isapi debug
- IL系列文章之一:Say Hello to IL
- IL系列文章之二:Make Best Use of Our Tools
- IL系列文章之三:Array in IL
- IL系列文章之四:Array in IL (续)
- IL系列文章之五:Property in IL
- Understanding .net CLR garbage collection
- Picking a Winner: .NET vs. J2EE