TJvAppXMLFileStorage OnGetFileName事件从未执行过

时间:2015-11-30 16:03:34

标签: delphi delphi-10-seattle jvcl

在Delphi 10 Seattle中,使用JVCL 3.48,在实现TJvAppXMLFileStorage OnGetFileName事件处理程序之后,它永远不会被执行:

procedure TForm1.JvAppXMLFileStorage1GetFileName(Sender:
    TJvCustomAppStorage; var FileName: TFileName);
begin
  // never gets executed!
  CodeSite.Send('JvAppXMLFileStorage1GetFileName', FileName.ToString);
end;

我需要此事件根据其他设置设置JvAppXMLFileStorage1.Location属性var FileName参数。

那么如何才能执行此事件?

1 个答案:

答案 0 :(得分:1)

快速查看 JvAppStorage.pas 似乎表明,调用DoGetFileName的唯一地方(如果分配了OnGetFileName,则会触发TJvCustomAppMemoryFileStorage.RecalculateFullFileNameDoGetFileName。查看该方法,case Location of仅从flCustom的{​​{1}}分支调用。

这似乎表明只有在分配了LocationflCustom的情况下才会触发该事件。