Eu fiz o seguinte codigo:
'Form_Load
Dim lR As Long
lR = SetTopMostWindow(Me.hwnd, True)
'Modulo1.bas
'no general_declarations
Option Explicit
Public Const SWP_NOMOVE = 2
Public Const SWP_NOSIZE = 1
Public Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
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 Long
'fora do general_declaration
Public Function SetTopMostWindow(hwnd As Long, Topmost As Boolean) _
As Long
If Topmost = True Then
SetTopMostWindow = SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, _
0, FLAGS)
Else
SetTopMostWindow = SetWindowPos(hwnd, HWND_NOTOPMOST, 0, 0, _
0, 0, FLAGS)
SetTopMostWindow = False
End If
End Function
esses codigos servem para deixar a janela sempre visivel, ou seja, mesmo que eu passe o foco para outra janela, aquele sempre vai ficar por cima, nunca vai para trás...
...o problema está na hora que eu abro uma nova janela... essa nova janela pode ficar por cima da do meu sisteminha, ou seja, se eu tiver 3 janelas já abertas e executar o sisteminha...dar tudo certo, mas se eu abrir uma nova janela, ela pode cobrir a janela do sisteminha!!!
como faço para a janela ficar sempre visivel, sem importar se as outras janelas sejam abertas antes ou depois??