Rubrik: Fenster | 09.05.01 |
![]() Diese Funktion aktiviert ein bestimmtes Fenster. Das Fenster erhält dann den "Fokus". | ||
Betriebssystem: Win95, Win98, WinNT, Win2000, WinME | Views: 12.971 |
Beschreibung:
Diese Funktion aktiviert ein bestimmtes Fenster. Das Fenster erhält dann den "Fokus".
Deklaration:
Declare Function SetFocusWnd Lib "user32.dll"Alias "SetFocus" ( _ ByVal hwnd As Long) As Long
Parameter:
hwnd | Hier wird das Fensterhandle des Fensters erwartet, welches den FoKus erhalten soll. |
Rückgabewert:
War der Funktionsaufruf erfolgreich, so wird das Fensterhandle des Fensters zurückgegeben, welches vorher den Fokus hatte. Tritt ein Fehler auf so gibt die Funktion "0" zurück. Für erweiterte Fehlerinformationen kann man die GetLastError-Funktion aufrufen.
Beispiel:
Private Declare Function SetCapture Lib "user32.dll" (ByVal hwnd As Long) As Long Private Declare Function GetCapture Lib "user32.dll" () As Long Private Declare Function ReleaseCapture Lib "user32.dll" () As Long Private Declare Function SetFocusWnd Lib "user32.dll" _ Alias "SetFocus" ( _ ByVal hwnd As Long) As Long
' Dieses Beispiel zeigt wie man mit der "SetCapture" Funktion ein ' MouseIn & MouseOut Ereigniss erzeugen kann, so wie das bei JAVA ' Controls der Fall ist. Bitte plazieren sie mehrer CommandButtons ' mit gleichem Namen und unterschiedlichen Index auf die Form. Private Sub Form_Load () ScaleMode = vbTwips End Sub
Private Sub Command1_MouseMove(Index As Integer, Button As Integer, _ Shift As Integer, X As Single, Y As Single) With Command1(Index) ' Befindet sich die Maus über dem Commandbutton ? If X >= 0 And Y >= 0 And X <= .Width And Y <= .Height Then SetCapture .hWnd .FontBold = True Else ' Wenn nicht, Capture lösen ReleaseCapture .FontBold = False End If ' Beispiel für GetCapture SetFocusWnd GetCapture End With End Sub