cpunion:早就该这么搞了。。。简单省事。。。我一直这么做的。
(发表于2003-7-12 22:36:00)
xinson:其实还有更好的办法.算法如下.
1.添加以下变量:
public:
bool m_bMouseDown;
POINT m_ptStart;
2.在构造函数中添加以下代码
m_bMouseDown=false;
3.响应WM_MOUSEMOVE,WM_LBUTTONDOWN,WM_LBUTTONUP消息.并添加以下代码
OnMouseMove(UINT nFlags,CPoint point)
{
......
if(m_bMouseDown)
{
RECT rect;
GetWindowRect(&rect);
OffsetRect(&rect,point.x-m_ptStart.x,point.y-m_ptStart.y);
MoveWindow(&rect,true);
}
}
OnLButtonDown(UINT nFlags,CPoint point)
{
m_bMouseDown=true;
SetCapture();
m_ptStart.x=point.x;
m_ptStart.y=point.y;
}
OnLButtonUp(UINT nFlags,CPoint point)
{
m_bMouseDown=false;
ReleaseCapture();
}
(发表于2003-9-8 23:50:00)
fanged:好文,研究一下!
(发表于2003-10-28 18:07:00)
Fyter:回复中的方法并不是好方法!只能将就用!
因为不是系统提供的支持!拖动时会有很强的残影!不完美!
(发表于2005-3-3 13:47:00)
..........................................................................
--------------------next---------------------
阅读(177) | 评论(0) | 转发(0) |