delphi – 从Windows任务栏中删除firemonkey

有没有办法,删除我的firemonkey应用程序窗体
Windows XP / vista / 7任务栏?我google时没有信息.

问题:

如何从Windows任务栏隐藏位于dll中的表单.

最佳答案 注意:
Talibek在问题中回答了他自己的问题,为清楚起见,我已将其移至此处.

您需要获取主窗体句柄(Form1.Handle),因为firemonkey中没有Application.handle,然后将其与FmxHandleToHWND(FMX.Platform.Win)转换为普通窗口句柄.在您的主机应用程序中,您需要检索该句柄(您可以使用它导出函数)并执行以下操作:

  h := GetHandle();

  ShowWindow(h, SW_HIDE);
  SetWindowLong(h, GWL_EXSTYLE, GetWindowLong(h, GWL_EXSTYLE) or 
      WS_EX_TOOLWINDOW);
  ShowWindow(h, SW_SHOW);

检索手柄:

class function TForm1.returnHandle(): integer;
begin
  result := FmxHandleToHWND(Form1.Handle);
end;

当然,Application.MainFormOnTaskBar属性需要设置为true,以便表单可以处理应用程序.

希望它对某人有帮助.

点赞