一个简单的问题!(20分)

  • 主题发起人 主题发起人 heiqiqiou
  • 开始时间 开始时间
H

heiqiqiou

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一段程序:如下!
字段id1是我在ADSSwitch中添加的new field
现在我想给它赋值:
if ADSSwitch.RecNo>0 then
begin
i:=1;
with ADSSwitch do
begin
ADSSwitch.First;
while not eof do
begin
ADSSwitch.Edit;
ADSSwitchid1.Value:=i;
ADSSwitch.next;
inc(i);
end;
end;
end;
我逐步测试id1都有值,但是显示在cxgrid中时,id1就没有值了,是空的,不明白为什么?
 
等着急用啊!
 
缺少Post
ADSSwitch.post加上去就OK了
 
是缺少保存post
 
不行的,我加了post,结果还是不行!
 
if ADSSwitch.RecNo>0 then
begin
i:=1;
with ADSSwitch do
begin
First;
while not eof do
begin
Edit;
FieldByName('id1').asinteger:=i;
Post;
inc(i);
next;
end;
end;
end;
 
不对啊,id1还是没有值啊!还有没有其他的办法啊?
注意:我的id1是通过new field 添加的fieldkind是fkCalculated类型的!
 
还有我这段程序是写在ADSSwitchAfterOpen中的,请问对不对啊?为什么id1还是没有值?
 
我逐步测试id1都有值,但是显示在cxgrid中时,id1就没有值了,是空的,不明白为什么?
这个过程是怎么做的啊
ADSSwitch是什么啊
 
写在ONCalcFields里去
 
ADSSwitch 是ADOdataset啊!是写在id1的OnCalfields吗?
xf-wangyi :xf是襄樊的意思吗?
 
[:)]这都能猜得出来,佩服
写到ADSSwitch.OnCalfields里去
 
因为我也是xf的!
 
还在襄樊吗兄弟[:)]
 
不是啊,在东莞!
 
如果还是不行,那你把你Create id1 Field的代码贴出来
 
还是不行啊,我的id1就是右键单击ADSSwitch(一个ADOdataset)使用new field功能添加的,
integer类型,fkCalculated的数据,我逐步运行发现写在ADSSwitch.OnCalfields里去,
它一直在if ADSSwitch.RecNo>0 then
begin
i:=1;
with ADSSwitch do
begin
First;
while not eof do
begin
Edit;
这部分循环!您能不能帮我看看啊!
谢谢了!
 
晕死,OnCalfields里不能这样写
 
只用写一行代码就行了
ADSSwitch.FieldByName('id1').AsInteger := adotable1.RecNo;
 
你的ADOtable1是什么东西啊?
 

Similar threads

S
回复
0
查看
917
SUNSTONE的Delphi笔记
S
S
回复
0
查看
898
SUNSTONE的Delphi笔记
S
S
回复
0
查看
703
SUNSTONE的Delphi笔记
S
S
回复
0
查看
665
SUNSTONE的Delphi笔记
S
后退
顶部