Selam Arkadaşlar öncelikle herkese hayırlı RAMAZANLAR
Benim Projemde Mdi ve Mdi Child formlarım var.Mdi form Üzerinde image nesnesi ile resimler göstermek istiyorum ama child formu açtığımda resimler child formun üstünde kalıyor.Sadece resim için değil label koysam da child formum üzerinde gözüküyor bunu nasıl önlerim.
simdiden yardımlarınız için tşk ederim.
Mdi Formda Resim göstermek
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
formun private kismina
formun OnCreate olayina
benim yazdigim kodda resim dosendigi icin biraz karisik gibi
isterseniz
OutCanvas.Draw (0,0, Logo);
diyerek bir tanede cizdirebilirsiniz.
Kod: Tümünü seç
OldWinProc, NewWinProc: Pointer;
OutCanvas: TCanvas;
Logo:TBitmap;
procedure NewWinProcedure (var Msg: TMessage);
Kod: Tümünü seç
Logo:=TBitmap.Create;
if FileExists(ExtractFilePath(Application.EXEName)+'logo.bmp') then Logo.LoadFromFile(ExtractFilePath(Application.EXEName)+'logo.bmp');
NewWinProc := MakeObjectInstance (NewWinProcedure);
OldWinProc := Pointer (SetWindowLong ( ClientHandle, gwl_WndProc, Cardinal (NewWinProc)));
OutCanvas := TCanvas.Create;
Kod: Tümünü seç
procedure TAnaForm.NewWinProcedure (var Msg: TMessage);
var
BmpWidth, BmpHeight: Integer;
I, J: Integer;
begin
Msg.Result := CallWindowProc (OldWinProc, ClientHandle, Msg.Msg, Msg.wParam, Msg.lParam);
if Msg.Msg = wm_EraseBkgnd then
begin
BmpWidth := Logo.Width;
BmpHeight := Logo.Height;
if (BmpWidth <> 0) and (BmpHeight <> 0) then
begin
OutCanvas.Handle := Msg.wParam;
for I := 0 to AnaForm.ClientWidth div BmpWidth do
for J := 0 to AnaForm.ClientHeight div BmpHeight do
OutCanvas.Draw (I * BmpWidth, J * BmpHeight, Logo);
end;
end;
end;
procedure TAnaForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Logo.Free;
end;
isterseniz
OutCanvas.Draw (0,0, Logo);
diyerek bir tanede cizdirebilirsiniz.