也就在当用户点击标题栏时移动窗体,而另一个窗体跟着移动..两个窗体相对位置不变..请指教!如何实现?

解决方案 »

  1.   

    Private Sub Form_Load()
    Form2.Show
    Timer1.Interval = 1
    End Sub
    Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    Unload Form2
    Unload Form1
    End Sub
    Private Sub Timer1_Timer()
    Form2.Move Form1.Left, Form1.Top + Form1.Height
    End Sub来个简单的
      

  2.   

    拦截wm_nchittest消息并向另一个 窗口转发。
      

  3.   

    '建立两个窗体'Form1的代码Private Sub Form_Load()
       Me.Move (Screen.Width - Me.Width) \ 2, (Screen.Height - Me.Height) \ 2
       Form2.Show
    End Sub
    'Form2的代码Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
    Private Sub Form_Load()
       Call SetParent(Me.hWnd, Form1.hWnd)
       Me.Width = Form1.ScaleWidth: Me.Height = Form1.ScaleHeight
       Me.Move 0, 0
    End Sub'Unload 时要先 Unload Form2 再Unload Form1
      

  4.   

    如何截拦wm_nchittest这个消息啊..最好有例子拉..各位
      

  5.   

    是不是通过子类化来捕获消息..好似用到SetWindowLong与CallWindowProc来做..但我不那么会用..试过也失败了啊..那也多谢你jennyvenus!不知如何做好!
      

  6.   

    俺是水货的三星,白沟组装的。不支持anycall。我在form1中拦截了多个消息转发到form2上,并让form2也拦截并执行,可是form2并不跟随。
      

  7.   

    http://www.mndsoft.com/blog/article.asp?id=215
    枕善居高手的代码
      

  8.   

    http://www.j2soft.cn/static_html/200511092049543857admin.html这里有源码!
      

  9.   

    开了个记事本拿SPY++拆了看了一下,貌似应该拦截WM_MOVING消息.lParam指向一个RECT结构,里面有当前窗口的TOP,LEFT,BUTTOM,RIGHT参数.拦截下来后直接FORM2.MOVE应该就可以了......