当前位置 : 主页 > 编程语言 > delphi >

delphi – 从Windows任务栏中删除firemonkey

来源:互联网 收集:自由互联 发布时间:2021-06-23
有没有办法,删除我的firemonkey应用程序窗体 Windows XP / vista / 7任务栏?我google时没有信息. 问题: 如何从Windows任务栏隐藏位于dll中的表单. 注意: Talibek在问题中回答了他自己的问题,为清
有没有办法,删除我的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,以便表单可以处理应用程序.

希望它对某人有帮助.

网友评论