1)MouseDown事件加上
(sender as tbutton).BeginDrag(false);
2)DragOver事件加上
if source is TButton then
Accept:=true;
3)DragDrop事件加上 >> 互換對方的caption
if Sender is TButton then begin
TempCaption := TButton(Source).Caption;
TButton(Source).Caption := TButton(Sender).Caption;
TButton(Sender).Caption := TempCaption;
end;