Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi unendliche maus-bewegungsfreiheit? (https://www.delphipraxis.net/7478-unendliche-maus-bewegungsfreiheit.html)

Illuminator-23-5 13. Aug 2003 12:15


unendliche maus-bewegungsfreiheit?
 
folgendes: ich möchte je nach mausbewegung ein bild nach links oder nach rechts verschieben.
klarerweise muss ich das onMouseMove-Ereignis verwenden
wenn ich nun aber immer nach rechts drehe, bis der cursor ganz rechts ist, bekomme ich das Ereignis nicht mehr, d.h., das bild lässt sich nur mehr nach links drehen.
wie kann ich das verhindern?


[falls jemand die problemstellung nicht versteht:
bei einem ego-shooter kann man sich unendlich lange nach rechts drehen, auch wenn der cursor schon längst über das bildschirmende raus is. wie funktioniert das????]

sakura 13. Aug 2003 12:18

Re: unendliche maus-bewegungsfreiheit?
 
Der zweite Absatz hat geholfen *g*

Eine Möglichkeit wäre, wenn Du mit SetCuror nach dem Auslesen der Bewegung den Cursor wieder zur Bildmitte sendest.

...:cat:...

Illuminator-23-5 13. Aug 2003 12:23

Re: unendliche maus-bewegungsfreiheit?
 
wenn ich aber den cursor wieder in die mitte setze, bekomme ich wieder das onMouseMove-Ereignis!!!! (ich löse dadurch eine art rekursion oder endlosschleife auf, weil ich bei jeder mausbewegung wieder die maus bewege!!!)

sakura 13. Aug 2003 12:32

Re: unendliche maus-bewegungsfreiheit?
 
Dann musst Du Dir zusätzlich entweder

a) ein Boolean-Flag setzen, daß das nächste OnMove "künstlich" ist

oder

b) Das OnMove ignorieren, wenn die Koordinaten der Bildschirmmitte entsprechen.

...:cat:...

teebee 13. Aug 2003 12:32

Re: unendliche maus-bewegungsfreiheit?
 
Du könntest vor jedem SetCursor überprüfen, ob der Cursor schon in der Bildmitte ist, und nur dann setzen, wenn er das nicht ist.

Ciao, teebee

sakura 13. Aug 2003 12:45

Re: unendliche maus-bewegungsfreiheit?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anbei mal je ein Beispiel für oben genannte Strategien ;-)

...:cat:...


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz