助人为快乐之本!

  博客园 :: 首页 :: 联系 :: 订阅 订阅 :: 管理
  23 Posts :: 0 Stories :: 280 Comments :: 4 Trackbacks

公告

网友问我的一个问题:移动一个窗体时如何同时移动另一个窗体?类似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即附属窗体的对象
posted on 2006-09-15 16:13 feiyun0112 阅读(1738) 评论(4) 编辑 收藏