起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 703|回复: 31

请问这个控制语句哪里有问题了**

[复制链接]
发表于 2008-6-19 09:43:57 | 显示全部楼层 |阅读模式
在信息层声明的choice,根据点了导航栏的新增、删除和保存给choice赋不同的值
我设了断点后发现,choice的值为0,请问问题出在哪?
procedure TMainForm.DataNavigator2AfterAction(Sender: TObject);
begin
   case TBizDataSetAction(Sender).ID of
      BizActnConsts.ActionDataSetAppend: XLXX.TXLXX(InfoBroker1.Info).choice:=1; // 新增
      BizActnConsts.ActionDataSetDelete: XLXX.TXLXX(InfoBroker1.Info).choice:=2; // 删除
      BizActnConsts.ActionDataSetSave: XLXX.TXLXX(InfoBroker1.Info).choice:=3; // 保存
  end;
end;
回复

使用道具 举报

发表于 2008-6-19 09:50:17 | 显示全部楼层
设断点看一下TBizDataSetAction(Sender).ID的值
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 10:02:28 | 显示全部楼层
如图,我加了一个对话框输出的代码,然后断点如图所设,在运行中点导航栏的新增按钮,对话框显示结果是 9

2.jpg

30.68 KB, 下载次数: 221

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 10:09:00 | 显示全部楼层
试了一下,如果是删除按钮,则 TBizDataSetAction(Sender).ID 是6
保存因为之前写的方法问题,点保存按钮目前运行报错中止
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 10:20:40 | 显示全部楼层
会不会是引用业务信息中的choice的方法XLXX.TXLXX(InfoBroker1.Info).choice不对?
断点后再看
choice
表达式错误:
Undeclared identifier "choice"
回复 支持 反对

使用道具 举报

发表于 2008-6-19 10:27:57 | 显示全部楼层
1.按新增,值是9,删除是6
楼主可以修改Case语句的判断值就行了BizActnConsts.ActionDataSetAppend 改成9
回复 支持 反对

使用道具 举报

发表于 2008-6-19 10:29:22 | 显示全部楼层
choice
表达式错误:
Undeclared identifier "choice"

没有找到这个定义,是不是没有写在public中
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 10:35:55 | 显示全部楼层
to 6楼:
我把BizActnConsts.ActionDataSetAppend 输出了,是9没错
to 7楼:
这个choice是在信息层代码里面定义的,是在信息的public里面的
引用信息层定义的变量,除了我上面写的,还需要注意什么吗?
回复 支持 反对

使用道具 举报

发表于 2008-6-19 10:44:38 | 显示全部楼层
引用信息层定义的变量,除了我上面写的,还需要注意什么吗?
没有什么其它的,可能不是没有定义对,就是没有引用对
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 11:04:03 | 显示全部楼层
请教正确的定义和引用方法?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 20:48 , Processed in 0.046014 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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