网友问我的一个问题:移动一个窗体时如何同时移动另一个窗体?类似winAMP里的效果。
其实实现起来也很简单:截获主窗体的WM_MOVE(窗体移动)消息,同时设置附属窗体的位置。
代码如下:
protected override void WndProc(ref Message m)

{
const int WM_MOVE = 0x3;
if (m.Msg == WM_MOVE )

{
if (frm != null)

{
frm.Left = this.Left + this.Width;
frm.Top = this.Top;
return;
}
}
base.WndProc(ref m);
}
frm即附属窗体的对象
其实实现起来也很简单:截获主窗体的WM_MOVE(窗体移动)消息,同时设置附属窗体的位置。
代码如下:
protected override void WndProc(ref Message m)
{
const int WM_MOVE = 0x3;
if (m.Msg == WM_MOVE )
{
if (frm != null)
{
frm.Left = this.Left + this.Width;
frm.Top = this.Top;
return;
}
}
base.WndProc(ref m);
}frm即附属窗体的对象
