讲mdichild 窗口的 WindowState属性设为wsMaximized
不过我觉得你的意思不是这个,请说清楚好吗?

解决方案 »

  1.   

    做背景也不要用子窗口吧,拦截WM_ERASEBKG消息,好像是这个消息
      

  2.   

    mdichild 窗口的 bordericons的biMaximize设为false
    Mdichild 窗口的 WindowState属性设为wsMaximized
      

  3.   

    如果背景Mdichild 窗口的 WindowState属性设为wsMaximized
    创建主窗口时没问题,
    但再打开其他Mdichild,再还原,背景Mdichild也跟着变小了
      

  4.   

    用image吧
    PROCEDURE TFrm_Main.ClientWndProc(VAR Message: TMessage);
    VAR
      BkgCanvas:TCanvas;
      LeftTop,RightBottom:TPoint;
    begin
      with Message do
        case Msg of
          WM_ERASEBKGND:
            begin
              //LeftTop:=ClientToScreen(Point(PanelBGD.Left,PanelBGD.Top));
              //RightBottom:=ClientToScreen(Point(PanelBGD.Left+PanelBGD.Width,PanelBGD.Top+PanelBGD.Height));
              LeftTop:=Point(frm_Main.Left,frm_Main.Top);
              RightBottom:=Point(frm_Main.Left+frm_Main.Width,frm_Main.Top+frm_Main.Height);
              BkgCanvas:=TCanvas.Create;//在FormClose中释放
              BkgCanvas.Handle:= TWMEraseBkGnd(Message).DC;
              BkgCanvas.StretchDraw(Rect(0,0,
                                         RightBottom.x-LeftTop.x,
                                         RightBottom.y-LeftTop.y),
                                    Image1.Picture.Graphic);
              BKGCanvas.Free;
              Result := 1;
            end;
        else
          Result := CallWindowProc(FPrevClientProc, ClientHandle, Msg, wParam, lParam);
        end;
    end;
      

  5.   

    我的背景不是图
    是html