程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 給MDI主窗口加圖片(strectch)

給MDI主窗口加圖片(strectch)

編輯:Delphi

 

 

給MDI主窗口加圖片(strectch)

將Form1的FormStyle設置為fsMDIForm,設置成MDI的主窗口。
加入image1,並調入一幅圖片

在Form1的Private中定義:
FClientInstance,FPrevClientProc : TFarProc;
PROCEDURE ClientWndProc(VAR Message: TMessage);

在Form1的創建事件中加入:
FClientInstance := MakeObjectInstance(ClientWndProc);
FPrevClientProc := Pointer(GetWindowLong(ClientHandle, GWL_WNDPROC));
SetWindowLong(ClientHandle, GWL_WNDPROC, LongInt(FClientInstance));


實現過程:
PROCEDURE TForm1.ClientWndProc(VAR Message: TMessage);
VAR
  CanvasClient:TCanvas;
begin
with Message do
case Msg of
WM_ERASEBKGND:
  begin
    CanvasClient:=Tcanvas.Create;
    CanvasClient.Handle:=GetDC(self.ClientHandle);
    CanvasClient.StretchDraw(rect(0,0,clientwidth,clientheight),image1.Picture.Bitmap);
    CanvasClient.Free;
  end;
else
  Result := CallWindowProc(FPrevClientProc, ClientHandle, Msg, wParam, lParam);
end;

end;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved