申请结束前在哪里进行最终处理?

时间:2012-06-26 14:59:32

标签: smart-mobile-studio

当表单关闭或应用程序终止且未成功时,我一直在尝试将数据写入存储。

我首先尝试使用表格单元

procedure TForm1.FinalizeObject;
begin
inherited;
SaveData;
end; 

procedure TForm1.FinalizeObject;
begin 
 SaveData;  
 inherited;
end; 

这些尝试都没有奏效,因此我对我的代码进行了调整并从项目单元中进行了尝试

procedure TApplication.ApplicationClosing;
begin 
 SaveData; 
 inherited;
end; 

procedure TApplication.ApplicationClosing;
begin 
 inherited; 
 SaveData;
end; 

我有一个w3_showmessage作为SaveData的第一行,它永远不会被调用....所以,如果我可以验证这4个方法中的一个被触发,我可以使用其中一个

我做错了什么?感谢

1 个答案:

答案 0 :(得分:2)

撰写时,Smart会在应用程序对象中公开两个新事件:

  • onunload的
  • OnBeforeUnload

这样可以更轻松地处理关机序列。智能javascript引导程序现在也会自动调用application.terminate(),因此您的代码应该可以正常工作。