请教高手:我在一个窗体中通过点击“生成新控件”按纽,来实现动态按纽的生成,但是不知道如何实现对新生成按纽的拖放。请指教!谢谢! 

解决方案 »

  1.   

    假如pButton是你生成按钮的句柄
    定义一个类成员变量或全局变量
    BOOL bButtonSelected;
    CPoint mousePoint;
    CRect lprect;
    在鼠标左键按下响应函数中添加像下面的代码:pButton->GetWindowRect(&lprect);//get the size of new button
    mousePoint=point //保存鼠标按下的位置
    然后比较Point和lprect,确定按钮是否有被选中。
    在鼠标左键弹起响应函数中
    比较mousePoint和point,看是否有拖动
    修改lprect
    if(bButtonSelected&&mousePoint!=point)
    pButton->MoveWindow(lprect);