delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
关于TClientDataSet创建动态表的问题 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiNetwork/html/delphi_20061212115522141.html
一般步骤:  
          var   table:TClientDataSet;  
  1.     table:=TClientDataSet.Create(application);  
  2.     table.FieldDefs.Add();   给动态表定义字段即设计表的结构    
  ...  
  3.     table.CreateDataSet;  
  4.     table.open;  
  5.     table.append;  
  6.     table.FieldByName().AsXXX:=XXX;   给字段赋值即加数据  
  ...  
  7.     table.post;  
  问题  
  一:如果from上已有TClientDataSet控件,第1步可以不要吧?  
  二:如果我用TClientDataSet.data:=XXX来给TClientDataSet加数据呢,第2步还要吗?  
  三:如果只写第3步,没写第2步的话,后面如何使用这个动态表呢?  
   
 

1)一般用ClientdataSet创建动态表是指创建内存表,所以ClientDataSet按习惯是在代码中生成的。如果使用界面上已有的控件,当然可以。  
  2)如果这样,第2、3、4步可以不要。  
  3)像一般的DataSet那样使用即可,如Edit1.text:=table.FieldByName().AsString

1.TClientDataSet.data:=XXX,这一步相当于把整个表(字段结构和具体数据)赋给了控件是吗?  
  2.没有第2步,那内存表就没有结构(没有字段定义),那么对它使用FieldByName()取的是什么?  
  3.table.CreateDataSet(nil)和table和TClientDataSet.Create(application)有什么区别,如果同时出现在程序里,那是指同一个TClientDataSet吗?

posted on 2008-10-28 09:56 delphi2007 阅读(515) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。