Как можно перетаскивать форму не только за заголовок
Как можно перетаскивать форму не только за заголовок
Как можно перетаскивать форму не только за заголовок type TForm = class(TForm) private procedure NCHitTest(var WMNCMsg: TWMNCHitTest); message WM_NCHITTEST; end; ... procedure TForm1.NCHitTest(var WMNCMsg: TWMNCHitTest); begin inherited; with WMNCMsg do if Result = HTClient then // Мышь сидит на окне? Если да Result:= HTCaption; // - то пусть Windows думает, что мышь на caption bar end; Ещё один метод пеpетаскивания фоpмы не только за заголовок, а вообще за любой компонент, коду значительно меньше, и он пpоще. procedure TForm1.Form1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ReleaseCapture; Perform (WM_SYSCOMMAND,SC_MOVE+2,0); end; Этот кусочек соpца надо подцеплять в обpаботчик OnMouseDown контpола, за котоpый будем таскать.