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;
相关文章推荐
- Delphi对WM_NCHITTEST消息的处理
- delphi遇到的一个实参错误(Format ‘%1’ invalid or incompatible with argument )
- Delphi与JAVA互加解密AES算法
- delphi Firemonkey ListView 使用参考
- Delphi基础:回调函数及其使用
- DelphiXE7中创建WebService(服务端+客户端) good
- Delphi-JAVA互加解密AES算法
- delphi RTTI 反射技术
- delphi 自我删除和线程池(1000行代码,需要仔细研究)
- hprose rpc使用实例(同时有Java和Delphi客户端的例子)
- Delphi数据类型转换(有几个字符串函数没见过,比如StringToWideChar和WideCharToString)
- delphi cmd(4个例子都是通过管道取得)
- Delphi中@,^,#,$特殊符号意义
- delphi 文件的读取(二进制文件和文本文件)
- delphi中用代码实现注册Ocx和Dll(有点怪异,使用CallWindowProc来调用指定函数DllRegisterServer)
- delphi 控件大全(确实很全)
- delphi 对抗任务管理器关闭(提升进程到Debug模式,然后设置进程信息SE_PROC_INFO)
- 为Delphi程序增加UAC功能(每个步骤都很详细)
- delphi string.split 按照任意字符串分割语句
- Delphi TChart 学习(一)