Programmieren - alles kontrollieren 4.937 Themen, 20.656 Beiträge

VisualBasic Hilfe gesucht: ALWAYS-ON-TOP -- wie?

GrafXman / 2 Antworten / Flachansicht Nickles

Hey Leute!


Ich habe ein VB-Programm mit einer "Form", also einem Fenster, dass Always-on-top sein soll!


Es soll nicht immer den Fokus haben, doch immer sichtbar, also im Vordergrund sein, auch, wenn man gerade in einem anderen (größeren) Fenster arbeitet.


Wie stelle ich das an???


Bitte schreibt an: faxis@t-online.de

bei Antwort benachrichtigen
r00ter GrafXman „VisualBasic Hilfe gesucht: ALWAYS-ON-TOP -- wie?“
Optionen

' zunächst die benötigten API-Deklarationen
Private Declare Function SetWindowPos Lib "user32" _
Alias "SetWindowPos" (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

Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1

' Fenster in den Vordergrund setzen
Public Sub FormOnTop(ByVal hWnd As Long, _
ByVal OnTop As Boolean)

If OnTop Then
' immer im Vordergrund
SetWindowPos hwnd, HWND_TOPMOST, 0, 0, 0, 0, _
SWP_NOMOVE Or SWP_NOSIZE
Else
' normal
SetWindowPos hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, _
SWP_NOMOVE Or SWP_NOSIZE
End If
End Sub

Übergeben Sie der Prozedur das Handle des Fensters und setzen für OnTop den Wert True, wenn das Fenster immer im Vordergrund angezeigt werden soll. Um das Fenster wieder normal anzuzeigen, rufen Sie die Prozedur erneut auf und setzen für OnTop den Wert False.


______________________________________________________________
securecrew
SecureCrew::UNIX / Linux Security, Coding and more..
SecureCrew.net

bei Antwort benachrichtigen
Danke GrafXman