Hej, jag har ett problem eller fråga. Jag vill att min form ska vara över allt, och då menar jag allt, den ska inte hamna under någoting. Så jag undrar om det finns några bra programmera här ute som vet hur det kan fixas? den kod jag har nu är ett always on top kod, men den e inte "always" on top. Om det finns mer än ditt fönster som är topmoste kommer dit fönster ligga över dessa om du inte ger dem focus. Det råder samma regler mellan topmoste fönster som för vanliga fönster. Fast topMoste ligger över vanliga fönster.Alltid överst
<code>
Private Sub Form_Load()
Dim lR As Long
lR = SetTopMostWindow(Form1.hwnd, True)
End Sub
</code>
Module
<code>
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
Public Function SetTopMostWindow(hwnd As Long, Topmost As Boolean) _
As Long
If Topmost = True Then 'Make the window topmost
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
</code>
någon som vet hur det ska göras för att få mitt program alltid överst så skriv det här tack.
/PerSv: Alltid överst