AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Cursor einfangen

Ein Thema von wendelin · begonnen am 11. Mär 2021 · letzter Beitrag vom 30. Mai 2021
 
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Cursor einfangen

  Alt 12. Mär 2021, 12:34
Das was Du Linieal nennst sind bei anderen lediglich Koordinaten.
Für Koordinaten hast Du oben bereits alles stehen was Du brauchst.


Angenommen Du hast ein Control mit einem Image von einem Teil eines Lineals.
Mit GetCursorPos() in einem Timer aktuelle Maus Koordinate holen.

Mit ClientToScreen/ScreenToClient diese Werte abgleichen um zu prüfen wie "nah" der Cursor am Teil des Lineals ist.

Ab einer von Dir gewünschten unter-Grenze mit SetCursorPos() den Cursor in das Control mit dem Teil des Lineals befördern.

Wenn Du ein Control fertig hast, so das der Timer alles brav verrichtet was er soll, füge nun mehr Controls mit mehr Teilabschnitten des Lineals hinzu und gebe dem Timer auch diese als Sprungziele an.

Du kannst auch ein großes Control mit dem kompletten Lineal machen und da dann eine eigene Maßeinheit für entwickeln,
Delphi macht meist alles mit


//edit
ich halte von dieser idee übrigens gar nichts. mich würde es als user verwirren wenn sich die maus nicht so verhält wie man es gewohnt ist.
okay, für default-Jumps bin ich zu haben (nach aktion X bekommt control Y den focus und die maus hüpft mit dahin) aber vom verschwinden des Cursors kann ich nur abraten.
Lass mal dann deine App abstürzen und der Kunde sitzt da... so ohne sichtbare maus... also ich würde so etwas nicht gut heissen.

ps:
die obige taktik gilt auch wenn du irgendwelche punkte im image als sprungziele bestimmst... also lineal mit cm und mm angabe, da nur du wissen kannst auf welchen pixel welcher wert ist kann ich dir nur bis hierhin hilfe geben.
Gruß vom KodeZwerg

Geändert von KodeZwerg (12. Mär 2021 um 13:03 Uhr) Grund: weil es freitag ist
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz