begin process at 2008 07 05 13:25:47
1 205 182 membres
158 nouveaux aujourd'hui
14 119 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Faire sauter les limites de l'ecran pour le curseur de la souris... [ Archives / Périphériques ] (f0xi)

Faire sauter les limites de l'ecran pour le curseur de la souris... le 15/11/2005 16:15:18

f0xi
Membre Club
(Admin CS)
j'explique le probleme :

j'aimerais utiliser la souris pour deplacer un objet dans une scene 3D ...

cet objet ce deplace sur l'axe X avec une limite de deplacement a droite et a gauche.

pour savoir si la souris vas a gauche ou a droite, je fait comme cela :

var OldMousePos : TPoint;

begin
   if Mouse.CursorPos.X > OldMousePos.X then opx := opx  + 0.1;
   else
   if Mouse.CursorPos.X < OldMousePos.X then opx := opx - 0.1;

   OldMousePos := Mouse.CursorPos;

   if opx < -Xmax then opx := -Xmax
   else
   if opx > Xmax then opx := Xmax;

   Objet.Position.X := opx;
end;


tout cela fonctionne bien, la n'est pas le probleme.

le probleme c'est que le curseur de souris ne peu se deplacer que dans la zone de l'ecran.
en gros, une fois que le curseur est a 0 on ne peu plus detecter les mouvements a gauche et
si le curseur est a 1024 ou 1280 selon la resolution de l'ecran, on ne peu plus detecter les mouvements a droite.

ce qui fait que dés que le curseur est sur l'un des bord de l'ecran on ne peu plus deplacer le curseur dans la direction voulus, sauf oposée ce qui provoque malheureusement au bout d'un moment des "blocage" de l'objet.

un autre probleme qui se pose, c'est que en incluant des controls de mouvement (genre deux variable boolean) et en gerant le mouvement en disant par exemple :
tant que c'est a gauche tu deplace l'objet et tant que c'est a droite tu deplace l'objet,
cela voudrais dire que l'on ne peu plus stoper l'objet, il se deplaceras irremediablement a droite ou a gauche, sans jamais pouvoir s'arreter entre Xmax et -Xmax.

donc j'aimerais savoir si il y a un moyen, grace a l'api windows ou l'assembleur de detecter tout de meme le mouvement de la souris sur un axe, si je puis dire, infinis, qui irait au dela des limites de l'ecran.
en gros surplomber la gestion du curseur qui l'empeche de sortir de l'ecran. (ça doit etre windows qui le gere).

j'ai eu beau regarder dans les sources ou l'aide delphi ... je ne trouve rien d'utile.

merci d'avance a ceux qui m'aiderons.


Re : Faire sauter les limites de l'ecran pour le curseur de la souris... le 15/11/2005 16:30:34

f0xi
Membre Club
(Admin CS)
Réponse acceptée !
yeah!

c'est good j'ai trouver dans les source, comme quoi j'avais mal chercher....

simplement grace a SetCursorPos();

bon par contre, il vas faloir que j'empeche la routine de detecter le repositionnement du curseur ... ça devrait le faire.



Classé sous : ecran, objet, curseur, souris, opx

Participer à cet échange

Pub



Appels d'offres

Plugin Dialer outlook
Budget : 2 000€
Redaction texte pour s...
Budget : 180€
Travail graphique- ill...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS