Merhaba arkadaşlar
Ekran görüntüsünü resim olarak alan bir fonksiyon arıyordum aşağıdaki gibi bir fonksiyon buldum
Dikkat ederseniz var blogunda soyle bır tanım var;
Fonksiyonun ne adı var nede gövdesi var.
Aşağıdaki satırda da ne işlem yapıpta result 'a aktarabılıyor ? Yani bir govdesi ,kod kısmı yok.
Daha once bu kullanım şekline hiç rastlamadım bılgısı olan arkadaslar varmıdır.
Örnekte yapılan işlem önemli değil yapının kullanımını merak ediyorum.
Ekran görüntüsünü resim olarak alan bir fonksiyon arıyordum aşağıdaki gibi bir fonksiyon buldum
function tform1.WindowSnap(windowHandle: HWND; bmp: TBitmap): boolean; var r: TRect; user32DLLHandle: THandle; printWindowAPI: function(sourceHandle: HWND; destinationHandle: HDC;nFlags: UINT): BOOL; stdcall; begin result := False; user32DLLHandle := GetModuleHandle(user32) ; if user32DLLHandle <> 0 then begin @printWindowAPI := GetProcAddress(user32DLLHandle, 'PrintWindow') ; if @printWindowAPI <> nil then begin GetWindowRect(windowHandle, r) ; bmp.Width := r.Right - r.Left; bmp.Height := r.Bottom - r.Top; bmp.Canvas.Lock; try result := printWindowAPI(windowHandle, bmp.Canvas.Handle, 0) ; finally bmp.Canvas.Unlock; end; end; end; end;
Dikkat ederseniz var blogunda soyle bır tanım var;
var printWindowAPI: function(sourceHandle: HWND; destinationHandle: HDC;nFlags: UINT): BOOL; stdcall;
Fonksiyonun ne adı var nede gövdesi var.
Aşağıdaki satırda da ne işlem yapıpta result 'a aktarabılıyor ? Yani bir govdesi ,kod kısmı yok.
try result := printWindowAPI(windowHandle, bmp.Canvas.Handle, 0) ;
Daha once bu kullanım şekline hiç rastlamadım bılgısı olan arkadaslar varmıdır.
Örnekte yapılan işlem önemli değil yapının kullanımını merak ediyorum.