调用其它程序时(全部的窗口LostFocus),释放这个设定,默认的自然不会在最前面,任何一个窗体得到焦点再改变SetWindowPos的参数为HWND_TOPMOST

解决方案 »

  1.   

    SetWindowPos ME。hwnd, HWND_BOTTOM, 0, 0, 0, 0, MostTopFlags
      

  2.   

    最好是用HWND_NOTOPMOST设定背景窗口,每次Active就notopmost他,这样他始终往后跑,就不存在以上的问题了。
      

  3.   

    要不鼠标move背景窗口主窗中的height=300,move主窗口就恢复,搞一个浮动条Cool一会
      

  4.   

    利用SetWindowPos这个API函数
    假如现在有两个窗口,CoolBarFrom是主菜单窗口,From1是操作窗口如下操作:From窗口要小
    于CoolBarFrom.
    1,在CoolBarFrom中加入Command按钮:
    Private Sub Command1_Click()
    From1.Show 
    End Sub在From1中加入如下代码:
    Private Sub Form_Load()
    Dim retValue As Long
    retValue = SetWindowPos(Me.hwnd, -1, 0, 0, 0, 0, flags)
    CoolbarForm.Show
    End Sub
    Private Sub Form_Deactivate()
    retValue = SetWindowPos(Me.hwnd, -2, 0, 0, 0, 0, flags)
    End Sub