将delphi7转换为delphi tokyo应用程序任务栏图标不喜欢移至第二屏幕应用程序

时间:2019-03-04 17:48:17

标签: delphi-10.2-tokyo multiscreen

我的delphi7应用程序始终显示在主屏幕监视器任务栏中,现在显示在delphi 10.2中。如果我将应用程序移至第二屏幕,则任务栏图标将移至该秒屏幕。 因此,现在我的问题是使用delphi 10.2打开并编译的旧delphi7应用程序,它们仍然具有旧行为。那么我该如何解决呢?

1 个答案:

答案 0 :(得分:3)

在Delphi 7中,所有TForm窗口在运行时均由隐藏的TApplication窗口拥有,该窗口实际上是管理应用程序“任务栏”按钮的窗口。当您将窗体移动到其他监视器时,该窗口仍保留在主监视器上。这就是为什么您看不到应用程序的“任务栏”按钮移动到其他显示器的原因。

在Delphi 2007和更高版本中,默认情况下,在Vista +上,TForm窗口不再由隐藏的TApplication窗口拥有。此行为由TApplication.MainFormOnTaskBar属性控制,该属性在Delphi 7中尚不存在。被隐藏的TApplication窗口拥有,会在Vista +中为任务栏,任务切换器,Aero,等等,因此ShowMainFormOnTaskBar应该始终设置为true。

将Delphi 7项目升级到Delphi 10.2时,请确保在应用程序的主要启动代码中设置Application.MainFormOnTaskBar := true;,以便该应用程序与Vista +正确交互。迁移D2007之前的项目时,默认情况下MainFormOnTaskBar为false。

相关问题