起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 262|回复: 14

DataGrid问题(急)**

[复制链接]
发表于 2008-11-12 16:48:58 | 显示全部楼层 |阅读模式
我要用DataGrid来填写数据,有个Edit,输入填写项,比如在Edit里输入3,DataGrid就显示3个空行,我就能在里面填写了,相应的,如果我在DataGrid里又新增了一行,Edit的数字就变成4,怎样实现啊??
回复

使用道具 举报

发表于 2008-11-12 16:52:17 | 显示全部楼层
隐藏主键字段,append3-n条记录。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-12 17:10:40 | 显示全部楼层
怎么隐藏主键
回复 支持 反对

使用道具 举报

发表于 2008-11-12 17:12:37 | 显示全部楼层
datagrid加载所有字段,显示那个字段的列删除掉。
回复 支持 反对

使用道具 举报

发表于 2008-11-12 17:15:47 | 显示全部楼层
其实2楼说的意思是对于那些关键字段(不能为空),需要你代码赋值或者设置自动填充给这些必填字段一个默认值,否则你不能增加的。
参考代码:
var
  i : Integer;
beign
  for i := 0 to 2 do
  begin
      dataset.append;
      dataset.FieldByName('非空字段').AsInteger := i;
  end;
end;
对于增加一行,Edit的值也增加1的话,那你就在数据集的相关事件上做赋值处理就可以了。(比如dataset的afterpost中,edit.text :=DataSet.RecNo)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-12 17:15:53 | 显示全部楼层
哦,这个意思唆,但是DataSetBroker1.DataSet.Append好象只能增加一次啊,for循环都不得行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-12 17:17:58 | 显示全部楼层
行,我先试试
回复 支持 反对

使用道具 举报

发表于 2008-11-12 17:18:33 | 显示全部楼层
最初由 xjc 发布
[B]哦,这个意思唆,但是DataSetBroker1.DataSet.Append好象只能增加一次啊,for循环都不得行 [/B]

不会吧?贴图看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-13 14:18:39 | 显示全部楼层
基本做完了,就是那个不是Edit,是DataEdit,里面的数据是从另一个DataSetBroker2读的,DataGrid的DataSetBroker1的afterapplyupdate事件里写了
DataEdit.Text := inttostr(zkbDataSet.DataSet.RecNo)+'块';
DataSetBroker2.DataSet.ApplyUpdates;
运行报错,
好象DataSetBroker2不在编辑状态,怎么回事??
回复 支持 反对

使用道具 举报

发表于 2008-11-13 14:36:06 | 显示全部楼层
DataSetBroker2.DataSet.Edit;
这样看一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-26 21:07 , Processed in 0.038512 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表