Attribute VB_Name = "mOnTop" Option Explicit ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Módulo responsável por deixar forms sempre no topo ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Constantes Private Const HWND_TOPMOST = -1 Private Const HWND_NOTOPMOST = -2 Private Const SWP_NOTHING = 0 Private Const SWP_NOSIZE = &H1 Private Const SWP_NOMOVE = &H2 Private Const SWP_NOACTIVATE = &H10 Private Const SWP_SHOWWINDOW = &H40 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Deixa um form sempre visível / tira-o desse estado ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Public Sub SetAlwaysOnTop(Who As Form, Enabled As Boolean) On Error Resume Next Dim X1 As Long Dim Y1 As Long Dim X2 As Long Dim Y2 As Long ' Calcula as dimensões do form X1 = Who.Left / Screen.TwipsPerPixelX Y1 = Who.Top / Screen.TwipsPerPixelY X2 = Who.Width / Screen.TwipsPerPixelX Y2 = Who.Height / Screen.TwipsPerPixelY ' Verifica se está abilitado Select Case Enabled Case True ' Seta sempre visível SetWindowPos Who.hWnd, HWND_TOPMOST, X1, Y1, X2, Y2, SWP_SHOWWINDOW Case False ' Tira do sempre visível SetWindowPos Who.hWnd, HWND_NOTOPMOST, X1, Y1, X2, Y2, SWP_NOTHING End Select End Sub