比如在FROM上
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
BUTTON1.Left:=X;
BUTTON1.Top:=Y;
end;
加入上面代码TRY************
* 努力学习 *
*   全为   *
*¥人民币¥*
************

解决方案 »

  1.   

    上面仅仅是简单的操作
    我给你个思路
    首先你要有个一按钮按下后将一个BOOLEAN设置TRUE
    然后再你点某个控件时,记住他,并在MOUSEMOVE里面移动
    他,在案下一次把变量设置FLASE这控件就放在那里了************
    * 努力学习 *
    *   全为   *
    *¥人民币¥*
    ************
      

  2.   

    另外还有一个前几天一个朋友发布的控件非常好
    不仅仅可以移动控件,还可以改变控件的大小
    留下一EMAIL我给你发,该控件有源码,你可以
    研究一下。************
    * 努力学习 *
    *   全为   *
    *¥人民币¥*
    ************
      

  3.   

    combobox与edit可没有FormMouseMove这个事件?
    我的Email:[email protected]
    多谢!!!
      

  4.   

    给出正确答:在创建的时候把
    DragMode 属性设置成 dmAutomatic
    //假设Form1是接受对象,DragMode 属性也设置成 dmAutomatic
    procedure TForm1.FormDragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    begin
      Accept:=True;
    end;procedure TForm1.FormDragDrop(Sender, Source: TObject; X, Y: Integer);
    begin
      TControl(Source).Left:=X;
      TControl(Source).Top:=Y;
    end;
    对于X,Y的确定就是按 YANGYUGW(小杨) 的方法了。