我要将界面上的两个panel采用拖动的方式交换位置,应该如何做?
要用到哪些事件呢?

解决方案 »

  1.   

    OnMouseDown
    OnMouseMove
    OnMouseUP
    都要用吧
      

  2.   

    要拖动只要在Panel的OnMouseDown中写上
    ReleaseCapture;
    SendMessage(Panel1.Handle,WM_SYSCOMMAND,$F012,0);
      

  3.   

    在OnMouseDown中记下鼠标按下左键的座标,在OnMouseMove中Panel的座标加/减与鼠标一样的差值。在OnMouseUP在Panel停止移动.
      

  4.   

    参考
    http://www.csdn.net/expert/topic/1050/1050140.xml?temp=.402569
      

  5.   

    使用WINAPI函数,先捕捉Panel的句柄,在进行移动,完成后释放句柄,具体可以参考无标题栏的窗口移动。
    参考函数setcapture和releasecapture;