有没有办法,从Windows XP / vista / 7任务栏中删除我的firemonkey应用程序表?我谷歌时没有信息。
问题:
如何从Windows任务栏隐藏位于dll中的表单。
答案 0 :(得分:2)
注意: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
,以便表单可以处理应用程序。
希望它对某人有帮助。