首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

GDI+ 圖片繪製到指定矩形區域:滑鼠框選目標區域範例

     編輯:Delphi

效果展示

框選繪製動畫

交互流程

  • 滑鼠按下:記錄起點 x1,y1,設旗標
  • 滑鼠移動:旗標真 → DrawFocusRect 畫虛線框 (XOR 模式可反覆畫除) → 更新 rt := Rect(x1,y1,X,Y) → 再畫一次移動框
  • 滑鼠釋放:確定 rt,清旗標,Repaint
  • 重繪:g.DrawImage(img, MakeRect(rt)) 將圖片拉伸填滿目標矩形

關鍵代碼


procedure TForm1.FormMouseMove(...);
begin if flag then begin
  DrawFocusRect(Canvas.Handle, rt); // 擦除舊框
  rt := Rect(x1, y1, X, Y);         // 更新新框
  DrawFocusRect(Canvas.Handle, rt); // 畫新框
end; end;

procedure TForm1.FormPaint(...);
var g: TGPGraphics; begin g := TGPGraphics.Create(Self.Canvas.Handle);
  if rt.Right > 0 then g.DrawImage(img, MakeRect(rt)); g.Free; end;
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved