to 卷起千堆雪tyn:
var winHWND :integer;
winDC:integer;
rect:TRect;
fBitmap:TBitmap;
begin
winHWND := GetDesktopWindow();
winDC := GetDC(winHWND);
GetWindowRect(winHWND, rect);
fBitmap := TBitmap.create;
fBitmap.width := rect.right-rect.left;
fBitmap.height := rect.bottom-rect.top;
BitBlt(fBitmap.canvas.handle, 0, 0, fBitmap.width, fBitmap.height, winDC, 0, 0, SRCCOPY);
fBitmap.SaveToFile('c:/tyn.bmp');
fBitmap.Free;
以上代码如果界面上有mediaplay控件,并且有播放,或暂停,save出的图片中mediaplay所播放区域为一片黑,如果在点save之前,先点一下其它窗口(即不是此form,其它之外的窗口),点save就正常看到图片,为什么?