您的位置:首页 > 编程语言 > Delphi

delphi 图片TcxImage学习

2016-03-31 20:46 691 查看
拖两个TcxImage控件到界面,一个是用于重绘时作为基点的。

一、导入图片:

procedure TForm1.btnLoadClick(Sender: TObject);
begin
if ImageCert.Picture.Graphic = nil then
begin
ImageCert.Picture.LoadFromFile('E:\学习文档\LoadImage.png');
ImageCert1.Picture.LoadFromFile('E:\学习文档\LoadImage.png');
end;
end;


二、响应鼠标滑轮事件

procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var
tmpbmp:TBitmap;
begin
tmpbmp :=TBitmap.Create;
if  WheelDelta < 0 then
begin
tmpbmp.Width := ImageCert.Width - 2;  //图位置大小
tmpbmp.Height := ImageCert.Height - 2;
tmpbmp.pixelformat:=pf32bit;
tmpbmp.Canvas.StretchDraw(tmpbmp.Canvas.ClipRect,ImageCert1.Picture.Graphic );
ImageCert.Picture.Assign(tmpbmp);
ImageCert.Width :=  ImageCert.Width - 2;  //图片大小
ImageCert.Height := ImageCert.Height - 2;

end
else
begin
tmpbmp.Width := ImageCert.Width + 2;   //图位置大小
tmpbmp.Height := ImageCert.Height + 2;
tmpbmp.pixelformat:=pf32bit;
tmpbmp.Canvas.StretchDraw(tmpbmp.Canvas.ClipRect,ImageCert1.Picture.Graphic );
ImageCert.Picture.Assign(tmpbmp);
ImageCert.Width :=  ImageCert.Width + 2;  //图片大小
ImageCert.Height := ImageCert.Height + 2;
end;
ImageCert.Update ;
end;


三、运行时可移动

procedure TForm1.ImageCertMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
HintStr:String;
begin
releaseCapture;
ImageCert.Perform(WM_SYSCOMMAND,SC_MOVE+1,0);
//  HintStr:='Left:'+INTTOSTR(ImageCert.Left)+', Top:'+INTTOSTR(ImageCert.Top)+'; Height:'+INTTOSTR(ImageCert.Height)+',Width:'+INTTOSTR(ImageCert.Width);
ShowMessage(HintStr);
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: