vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Maus & Tastatur09.05.01
ClipCursor-Funktion

Diese Funktion schränkt den Bewegungsfreiraum der Maus ein. ClipCursor kann dazu verwendet werden, die Maus nicht über einem bestimmten ...

Betriebssystem:  Win95, Win98, WinNT, Win2000, WinMEViews:  11.315 

Beschreibung:
Diese Funktion schränkt den Bewegungsfreiraum der Maus ein. ClipCursor kann dazu verwendet werden, die Maus nicht über einem bestimmten Koordinaten-Rechteck hinaus bewegen zu können. Um die Mausbewegung wieder frei zu geben, rufen Sie diese Funktion erneut auf, jedoch unter Angabe der Bildschirmkoordinaten.

Deklaration:

Declare Function ClipCursor Lib "user32.dll" (lpRect As Any) As Long

Parameter:
lpRectErwartet eine RECT-Struktur, welche die Eckpunkte für das einzugrenzende Rechteck angibt.

Rückgabewert:
War der Funktionsaufruf erfolgreich, wird ein Wert ungleich 0 zurückgegeben. Tritt ein Fehler auf, so ist der Rückgabewert 0. Erweiterte Fehler-Informationen können über die Funktion GetLastError abgefragt werden.

Beispiel:

Private Declare Function ClipCursor Lib "user32.dll" (lpRect As Any) As Long 
 
Private Type RECT 
  Left As Long 
  Top As Long 
  Right As Long 
  Bottom As Long 
End Type 
 
' Die Maus darf nur noch innerhalb des aktuellen Fensters bewegt werden.
' Damit das Fenster nicht aus dem Bereich verschoben werden kann,
' siehe Tipp <img src='../images/16x16/tipp.gif' width=16 height=16 border=0 align=absmiddle> <a href="../tipps/details.php?id=57">Verschieben eines Fensters unterbinden</a>
Private Sub Form_Load () 
  Dim TmpR As RECT
  Dim RetVal As Long 
 
  ' Angabe der Fenster-Koordinaten
  With TmpR 
    .Top = Form1.Top / Screen.TwipsPerPixelY 
    .Bottom = .Top + Form1.Height / Screen.TwipsPerPixelY 
    .Left = Form1.Left / Screen.TwipsPerPixelX 
    .Right = .Left + Form1.Width / Screen.TwipsPerPixelX 
  End With 
 
  RetVal = ClipCursor(TmpR)
 
  If RetVal = 0 Then 
    MsgBox "Funktionsaufruf gescheitert", vbInformation , "Fehler" 
  End If 
End Sub
' WICHTIG: Diese Funktion hebt die Bewegungseinschränkung
' der Maus wieder auf 
Private Sub Form_QueryUnload (Cancel As Integer, UnloadMode As Integer) 
  Dim TmpR As RECT
  Dim RetVal As Long 
 
  ' Koordinaten des gesamten Bildschirmbereichs
  With TmpR 
    .Top = 0 
    .Bottom = Screen.Height / Screen.TwipsPerPixelY 
    .Left = 0 
    .Right = Screen.Width / Screen.TwipsPerPixelX 
  End With 
 
  RetVal = ClipCursor(TmpR)
End Sub 

 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.