如何在最小化时隐藏我的表单?

时间:2013-12-13 19:18:16

标签: delphi delphi-7

除了我的主要表单,我需要我的表单通知我的主表单并隐藏我最小化它们(而不是最小化到桌面窗口)。

如何做到这一点?

我的表单是这样创建的:How to make my Forms always to be on top my main form?

1 个答案:

答案 0 :(得分:5)

处理WM_SYSCOMMAND消息以检测最小化:

type
  TMyForm = class(TForm)
  ....
  protected 
    procedure WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
  ....
  end;
....
procedure TMyForm.WMSysCommand(var Message: TWMSysCommand);
begin
  if Message.CmdType and $FFF0 = SC_MINIMIZE then
    Hide
  else
    inherited;
end;

您也可以通过您选择的任何机制在此时通知主表单。