什么是無效﹖是指在Visible := False嗎﹖請設Visible := True;
如果是在自動創建中移去﹐請將此子Form的Unit加入MDIMain中﹐然后﹕
var
  mc:Tmdichildform;
begin
  mc := Tmdichildform.create(self);
  mc.show;//mc的close事件中﹕action := cafree;
end;
================
1.在Form1上增加一个Image元件,并选择要设置的背景到Image的Picture中。 (MDIMAIN!!!!)
2:在Form1的Private中定义: 
        FClientInstance, 
        FPrevClientProc : TFarProc; 
        PROCEDURE ClientWndProc(VAR Message: TMessage); 
3: 在实现(implementation)中加入上述过程的具体内容: 
PROCEDURE TForm1.ClientWndProc(VAR Message: TMessage); 
VAR 
  MyDC : hDC; 
  Ro, Co : Word; 
begin 
  with Message do 
    case Msg of 
      WM_ERASEBKGND: 
        begin 
          MyDC := TWMEraseBkGnd(Message).DC; 
          FOR Ro := 0 TO ClientHeight DIV Image1.Picture.Height DO 
            FOR Co := 0 TO ClientWIDTH DIV Image1.Picture.Width DO 
              BitBlt(MyDC, Co*Image1.Picture.Width, Ro*Image1.Picture.Height, 
                Image1.Picture.Width, Image1.Picture.Height, 
                Image1.Picture.Bitmap.Canvas.Handle, 0, 0, SRCCOPY); 
          Result := 1; 
        end; 
    else 
      Result := CallWindowProc(FPrevClientProc, ClientHandle, Msg, wParam, lParam); 
    end; 
end; 4:在Form1的创建事件中加入: 
   FClientInstance := MakeObjectInstance(ClientWndProc); 
   FPrevClientProc := Pointer(GetWindowLong(ClientHandle, GWL_WNDPROC)); 
   SetWindowLong(ClientHandle, GWL_WNDPROC, LongInt(FClientInstance)); 上面的步骤已经完成了MDI主窗口背景图案的设置,下面可以增加一个MDIChild窗口,实现MDI程序。 

解决方案 »

  1.   

    to WnEunfn(斯人不语) :
    你的方法很好,但能否把.BMP图片换成.GIF文件呢?
    画一幅GIF或jpg图片。
      

  2.   

    Dephi6本身的TImage允許你加上一副jpeg格式的圖片﹐但不支持GIF,除非你重載TImage中的方法﹐但是這將使你的程序變得更大
      

  3.   

    FOR Ro := 0 TO ClientHeight DIV Image1.Picture.Height DO
    //showmessage(inttostr(Image1.Picture.Width));
    ?FOR Co := 0 TO ClientWIDTH DIV Image1.Picture.Width DO
    BitBlt(MyDC, Co*Image1.Picture.Width, Ro*Image1.Picture.Height,
    Image1.Picture.Width, Image1.Picture.Height,
    Image1.Picture.Bitmap.Canvas.Handle, 0, 0, SRCCOPY);
    Result := 1;
    end;
    过不去,提示除数是0,错误在?那行,可我显示的时候除数不是0阿