Hin und wieder bekommt die Anforderung, eine Form unbedingt an der aktuellen Mausposition anzeigen zu müssen. Am einfachsten lässt sich das mit Hilfe der GetCursorPos API-Funktion bewerkstelligen, die uns die aktuelle Mausposition in Pixel zurückgibt. Jetzt brauchen wir nur noch die Koordinaten in Twips umzurechnen und die Form via Move-Anweisung an die Mausposition zu "schieben". Option Explicit ' benötigte API-Deklarationen Private Declare Function GetCursorPos Lib "user32" ( _ lpPoint As POINTAPI) As Long Private Type POINTAPI x As Long y As Long End Type Aufrufbeispiel: ' Form an aktueller Mausposition anzeigen Dim P As POINTAPI ' aktuelle Mausposition ermitteln GetCursorPos P ' Form laden Load Form2 ' Form an die aktuelle Mausposition schieben ' (hierbei müssen die Pixel-Angaben in Twips umgerechnet werden!) Form2.Move P.x * Screen.TwipsPerPixelX, P.y * Screen.TwipsPerPixelY ' Form anzeigen Form2.Show vbModal Dieser Tipp wurde bereits 20.064 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevCommand 4.0 ![]() Professionelle Schaltflächen im modernen Design! Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Tipp des Monats Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
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. |