Das Problem liegt an der
VCL, die Diskussion darüber gab´s vor Jahren schon im Entwicklerforum. Mein Vorschlag war und ist, dass deine Form auf die Nachricht WM_SYSCOMMAND reagieren muss, und im Fall von SC_RESTORE den Befehl
Application.Restore;
aufrufen sollte, dann geht´s wieder:
Delphi-Quellcode:
type
TForm1 = class(TForm)
{ ... }
private
procedure WMSysCommand(var Message: TMessage);
message WM_SYSCOMMAND;
end;
procedure TForm1.WMSysCommand(var Message: TMessage);
begin
if(Message.Msg = WM_SYSCOMMAND) and
(Message.wParam = SC_RESTORE) then Application.Restore;
inherited;
end;