在我们的主要数据条目屏幕上,我们有一个好/取消对话在OnBeforePost事件。

  • "确定" 让事情顺其自然
  • 取消 现在不会 Dataset.Cancel;

这并是什么意思,滚回的任何更改,并把数据集成浏览模式。

这是好的,对于大多数客户,但我们已经询问,如果它可以改变

  • 取消, 该中止后留在编辑方式与目前的变化。

如果他们要取消,他们可以使用的取消键。

看来源 procedure TDataSet.Post; 它看起来并不可能使用这一事件的方式。

剂量的任何人有任何想法在一个方式本可以做?

后续:这是我的选择现在处理它

case MessageDlg('Save Changes?', mtWarning, [mbYes, mbNo, mbAbort], 0) of
  mrYes: ;
  mrNo: Dataset.Cancel;
  mrAbort: Abort;
  mrNone: Abort;
end;
有帮助吗?

解决方案

调用的方法 Abort (从单元 System, 如果我记错的话)提出了一个沉默的 EAbort 例外,取消的只是当前操作。应工作。

(顺便说一句:这种方法取消databaset操作中也描述深处的某个地方帮助系统中的'正常的'方式实现这-这就是我得到了这种技术从最初).

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top