.
-, stdcall DoFindWindow Forms.pas, Andreas Hausladen. , (CloseAction = caHide) .
- - TCustomForm.CMShowingChanged, FindTopMostWindow, , TCustomForm.CMRelease.
(Edit: 4 )
procedure TCustomForm.CMRelease;
var
NewActiveWindow: LongInt;
begin
if Application.MainFormOnTaskbar then
begin
NewActiveWindow := 0;
if (GetActiveWindow = Handle) and not IsIconic(Handle) then
begin
NewActiveWindow := FindTopMostWindow(Handle);
end;
if NewActiveWindow <> 0 then
begin
SetActiveWindow(NewActiveWindow);
end;
end;
Free;
end;
, , , .