>>886
↓こういうクラスを作って、
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1064150088&res=209&fi=no

↓みたいにShapeのOnStartDragでそのインスタンスを渡してやれば、そんな感じのことは出来るよ
void __fastcall TForm1::Shape1StartDrag(TObject *Sender, TDragObject *&DragObject)
{
DragObject = new TMyDragObject(Shape1);
}