Przeciąganie myszą zawartości jednego TImage do innego TImage

Aby przeciągnąć zawartość Image1 do Image2 należy ustawić właściwość DragMode komponentu Image1 i Image2 na dmAutomatic, następnie tworzymy zdarzenie OnDragOver dla Image2:

Unit1.cpp

void __fastcall TMainForm::Image2DragOver(TObject *Sender, TObject *Source, int X, int Y,
                                          TDragState State, bool &Accept)
{
   Accept = Source->ClassNameIs("TImage");
}


i OnDragDrop dla tego samego komponentu:

Unit1.cpp

void __fastcall TMainForm::Image2DragDrop(TObject *Sender, TObject *Source, int X, int Y)
{
   Image2->Picture = dynamic_cast<TImage*>(Source)->Picture;
}