0

我最近升级到 Delphi 10.4.2(来自 10.4.1),现在在使用 QuickReport 预览时遇到了一些奇怪的行为。

在主窗体上,我使用带有一些子菜单的 MainMenu。当子菜单项中的代码导致显示 QuickReport 预览时,关闭此预览窗口后主窗体消失。

调试使我找到了 Vcl.Forms.pas 单元中的这段新代码。过程 TFormStyleHook.TMainMenuBarStyleHook.ProcessMenuLoop 现在结束如下:

  if FDispatchMessage then
    DispatchMessage(Msg)
  else
  if Msg.Message = CM_RELEASE then
    FFormHook.Form.Release;

以前的 Delphi 版本中没有 else 标签。QuickReport 预览窗口关闭后,FFormHook.Form 指向 MainForm,该 MainForm 将被释放。所以应用程序仍在运行,但主窗体消失了,任务栏中没有应用程序图标。

我的应用程序使用样式。当我从顶层的 MainMenu 项调用 QuickReport 时,不会发生此行为。

有没有其他人遇到过同样的问题?

4

0 回答 0