如果实现区域截图呢?(40分)

  • 主题发起人 主题发起人 Ch4o.Jt
  • 开始时间 开始时间
C

Ch4o.Jt

Unregistered / Unconfirmed
GUEST, unregistred user!
偶的想法是,当鼠标点击的时候以鼠标的点为中心的一个小正方形实现截图(只截这个小正方形,不是全屏哦``)...

希望可以给出完整代码..`` 谢谢`~

请牛人打救....[8D]
 
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
w=320;//矩形宽
h=240;//矩形高
var
bmp:tbitmap;
dc:hdc;
p:tpoint;
begin
try
bmp:=Tbitmap.Create;
with bmp do begin
PixelFormat:=pf32bit;
Width:=w;
Height:=h;
dc:=getdc(getdesktopwindow);
SetStretchBltMode(Canvas.Handle, HalfTone);
p:=clienttoscreen(point(x,y));
stretchBlt(Canvas.Handle,0,0,w,h,DC,p.x-(w shr 1),p.y-(h shr 1),w,h,SRCCOPY);
releasedc(h,dc);
SaveToFile('d:/test.bmp');
end;
finally
bmp.Free;
end;
end;
 
接受答案了.
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部