Для любого компонента:
| Код | int X0, Y0; bool bMove = false;
void __fastcall TForm1::Label1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { bMove = true; X0 = X; Y0 = Y; }
void __fastcall TForm1::Label1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { if(bMove) { ((TControl *)Sender)->Left += X - X0; ((TControl *)Sender)->Top += Y - Y0; } }
void __fastcall TForm1::Label1MouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { bMove=false; } |
Для любого компонента, исключая Label и Image:| Код | void __fastcall Form1::Panel1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { ReleaseCapture(); ((TControl*)Sender)->Perform(WM_SYSCOMMAND, 0xF012, 0); } |
|