FMX 框架下,
直接重载 DragDrop ,DragOver即可。
声明:
procedure DragDrop(const Data: TDragObject; const Point: TPointF);override;
procedure DragOver(const Data: TDragObject; const Point: TPointF; var Operation: TDragOperation);override;
实现:
procedure Form1.DragDrop(const Data: TDragObject; const Point: TPointF);
begin
var filepathname:= Data.Files[0]; //也可以有多个文件,用for循环可以读出来
end;
procedure Form1.DragOver(const Data: TDragObject; const Point: TPointF; var Operation: TDragOperation);
begin
Operation := TDragOperation.Link;//提示“链接”
//TDragOperation.Move; //提示“移动”
//TDragOperation.Copy; 提示“复制”
end;
vcl 框架下,
FormCreate中初始化:
OrgFormWndProc := Self.WindowProc;
Self.WindowProc := FormWndProc;