不太明白你的意思
'声明
'窗体总在最前
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As LongConst HWND_TOPMOST = -1在Form_Load里加上
    SetWindowPos Me.hwnd, HWND_TOPMOST, Me.Left / Screen.TwipsPerPixelX, _
        Me.Top \ Screen.TwipsPerPixelY, Me.Width \ Screen.TwipsPerPixelX, _
        Me.Height \ Screen.TwipsPerPixelY, 0

解决方案 »

  1.   

    如果用setWindowPos的话那个form不是在所有窗口前端了吗?
    我是希望该form和word窗口为一整体,该form始终在word的前面,但别的窗口可遮掉word和该form,点击word后该form仍在word的前端
      

  2.   

    是不是像delphi开发环境那样?
      

  3.   

    '#################################################################################################
    #If Win32 Then
       Public Const HWND_TOPMOST& = -1
    #Else
       Public Const HWND_TOPMOST& = -1
    #End If 'WIN32
    '#################################################################################################
    #If Win32 Then
       Const SWP_NOMOVE& = &H2
       Const SWP_NOSIZE& = &H1
    #Else
       Const SWP_NOMOVE& = &H2
       Const SWP_NOSIZE& = &H1
    #End If 'WIN32
    '#################################################################################################
    #If Win32 Then
       Declare Function SetWindowPos& Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
    #Else
       Declare Sub SetWindowPos Lib "user" (ByVal hWnd As Integer, ByVal hWndInsertAfter As Integer, ByVal X As Integer, ByVal Y As Integer, ByVal cx As Integer, ByVal cy As Integer, ByVal wFlags As Integer)
    #End If 'WIN32
    '#################################################################################################Function StayOnTop(Form As Form)
       Dim lFlags As Long
       Dim lStay As Long
       lFlags = SWP_NOSIZE Or SWP_NOMOVE
       lStay = SetWindowPos(Form.hWnd, HWND_TOPMOST, 0, 0, 0, 0, lFlags)
    End Function
      

  4.   

    声明:Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, _
       ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, _
       ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As LongPrivate Const SWP_NOSIZE = &H1
    Private Const SWP_NOMOVE = &H2
    Private Const HWND_TOPMOST = -1
    Private Const HWND_NOTOPMOST = -2
    程序:'设为最前面
    SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE'恢复正常
    SetWindowPos Me.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
     
      

  5.   

    那么怎么使form后的word窗口不能被选中直到form被关闭? 
      

  6.   

    Private Sub Form_Deactivate()
      Me.ZOrder
    End Sub