起步软件技术论坛-X3

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: ht88th

【搞定】急:如何用代码写 字段的自动填充设置?**

[复制链接]
发表于 2007-4-17 09:09:25 | 显示全部楼层
不知道楼主最终想实现啥?不知道怎么回复, 如果是要求代码 看看这个帖http://bbs.justep.com/forum.php?mod=viewthread&tid=10981   是否有帮助,也可以"枚举"或者其他的关键字来搜索一下看看是否有你要的答案

如果不是,请具体描述一下,让我们好理解.最好能举例,要不真的不知道如何回复了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-17 12:57:09 | 显示全部楼层
真是够费口实的(我的意思很清楚:用代码实现。用鼠标点点实现的方式肯定大家都会,我不可能连这个也来问你们)
看来自己摸索吧,总算自己摸了出来,代码如下(已正式使用):
//设置数据集字段的自动填充属性
static procedure TProgram.SetAutoFill(ADataSet: TBizDataSet; AFieldName, AExpression: string);
begin
  if (AFieldName > ' ') and (AExpression > ' ') then
  begin
    ADataSet.BizFieldByName(AFieldName).AutoFillDef.Enabled := True;
    ADataSet.BizFieldByName(AFieldName).AutoFillDef.Expression.Text := AExpression;
    ADataSet.BizFieldByName(AFieldName).AutoFillDef.Options := [0]; //TFieldFillOption.foFillReadOnly;
    //Business.Model.TFieldFillOptions.foNullFieldOnly]
  end;
end;

不过请问 以下一行代码 为何 会编译错误?
ADataSet.BizFieldByName(AFieldName).AutoFillDef.Options := [TFieldFillOption.foFillReadOnly];
回复 支持 反对

使用道具 举报

发表于 2007-4-17 14:21:45 | 显示全部楼层
不过请问 以下一行代码 为何 会编译错误?
ADataSet.BizFieldByName(AFieldName).AutoFillDef.Options := [TFieldFillOption.foFillReadOnly];


请问报什么错误?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-17 17:01:36 | 显示全部楼层
编译错误如下:
[错误]Biz:\COMMONSPACE\LIB\AppFrameLib.Library.pas(11576, 81): Incompatible types: "TFieldFillOptions" and "TFieldFillOption"
回复 支持 反对

使用道具 举报

发表于 2007-4-17 17:12:00 | 显示全部楼层
ADataSet.BizFieldByName(AFieldName).AutoFillDef.Options := [TFieldFillOption.foFillReadOnly];
这一句应该是没有问题的啊!

在编译时就已经报错了?
重启studio可以吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-26 14:15:30 | 显示全部楼层
你试过吗???你那可以编译通过吗???
这么一点小问题,都如此费劲,BBS的效率也太差了点。
太费力了,就将就用[1,2,3]了,不想问清楚了,不想劳驾了。揭帖!
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-6 20:04 , Processed in 0.036575 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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