有一比较蠢的方法
那就是
在子窗体的最大化是,给主窗体发自定义消息
自定义消息的定义
比如
const
WM_aaaa = WM_USER+100;procedure ddd(message:Tmessage):message WM_aaaa;

解决方案 »

  1.   

    发送是用
    sendMessage(主窗体的handle,wm_aaaa,0,0);
      

  2.   

    捕捉子窗口最小化事件,然后通知父窗口
    怎样捕捉,怎样通知你会不会?
    捕捉方法:
    在子窗口的类中添加如下代码:
    TForm1=class(TForm)
    ....
    private
      procedure GetMinMsg(var K:TMessage);message WM_SYSCOMMAND;//捕捉系统命令的最小
                                                                //化事件
    End;....TForm1.GetMinMsg(var K:TMessage);
    begin
      if K.WParam=SC_MINIMIZE
      then begin
        PostMessage(爸爸窗口.Handle,WM_USER+100,0,0);//通知父窗口
      end;
      Inherited;//这个你一定要加上,否则!自己查资料
    end;
    //用类似的方法捕捉子窗口发送过来的消息:
    在父窗口的类中添加如下代码:
    TForm2=class(TForm)
    ....
    private
      procedure GetMinMsg(var K:TMessage);message WM_USER+100
    End;....TForm2.GetMinMsg(var K:TMessage);
    begin
      //在这里处理你最想知道的,子窗口的最小化事件
    end;