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 : Poiteur de la souris : comment modifier ses coordonnées ? [ Archives / Périphériques ] (eldered)

dimanche 9 novembre 2003 à 11:24:58 | Poiteur de la souris : comment modifier ses coordonnées ?

eldered

Salut ,

J'ai vu un code pour la souris de TC sur ce site, qui est trés interessant d'ailleurs, mais je me pose la question suivante :

Peut on modifier la valeur de _CX et _DX afin de replacer la souris à l'endroit que l'on veut ?

Je m'explique, je suis en train de programmer un casse brique et je me sert de ce code pour deplacer la raquette :

http://www.cppfrance.com/code.aspx?ID=9589

Cependant, les limites de ma table de jeux ne sont pas (0.0) / (640/480) mais (10,10) / (510/460), il faut donc,
Lorsque je me retrouve a l'exterieur de ces limites que je replace le curseur de la souris afin de ne pas attendre
Le retour du curseur par exemple.

Voila, en esperant une réponse !
@ micalement , Eddy

dimanche 9 novembre 2003 à 14:18:18 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

Anacr0x

pour bouger la souris, SetCursorPos()

dimanche 9 novembre 2003 à 17:44:17 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

eldered

Merci, j'essaie de suite !!!!!!!!!!!!!!!!!!

dimanche 9 novembre 2003 à 17:52:28 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

eldered

Oups, cela ne fonctionne pas sous Turbo C!

Merci qd même !

dimanche 9 novembre 2003 à 18:11:36 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

Anacr0x

C bien du win32 ? si oui, inclure windows.h devrait suffire pour utiliser SetCursorPos(), a moins que Turbo C n'aime pas ça

enfin, met un bout de ton code, ca sera plus simple

lundi 10 novembre 2003 à 07:29:29 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

eldered

Non ! C pas du win32, Turbo C est un vieux compilo des année 90, qui fonctionne sous DOS! Pour la souris, je travaille avec les interruption DOS!

Voila le code :

int x, y, clic;
clrscr();
_AX=0; geninterrupt(0x33); // initialise le driver de la souris
_AX=1; geninterrupt(0x33); // affiche le curseur de la souris
// _AX=2; geninterrupt(0x33); // efface le curseur de la souris
_setcursortype(_NOCURSOR); // on retire le "curseur du clavier"

do
{
_AX=3; geninterrupt(0x33); // recherche des infos de la souris
clic=_BX; // le clic se trouve dans _BX
x=_CX; // l'abscisse dans le registre _CX
y=_DX; // la coordonn,e dans _DX
gotoxy(1, 1);
printf("Position : %d - %d ", x, y); // on affiche la position

// si on ne clique pas
if (clic == 0)
{
gotoxy (1, 2);
printf ("Clic Gauche : OFF");
gotoxy (1, 3);
printf ("Clic Droit : OFF ");
}

// clic gauche
if (clic & 1)
{

Par exemple, ici, lorsque je clique sur le clique gauche de ma souris, je voudrais que mon curseur de souris aille en 200,200.

gotoxy (1, 2);
printf ("Clic Gauche : ON ");
}

// clic droit
if (clic & 2)
{
gotoxy (1, 3);
printf ("Clic Droit : ON ");
}

}
while (!kbhit()); // tant qu'on appuie sur aucune touche, on boucle
}

Voila, peut être que ça t'aidera !
Et merci pour ton aide !

++

lundi 10 novembre 2003 à 13:09:16 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

Anacr0x

Ah, excuse moi alors, j'y connais rien dans ce domaine et je ne peut pas t'aider...
sorry

lundi 10 novembre 2003 à 19:50:32 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

eldered

C bon, j'ai trouvé, je ne travaille plus avec les coordonnées réelles de la souris, mais avec le déplacmeent de la souris a chaque itération ... enfin bref, c bon, g contourné le pb, c moins bo, ms de toute facon, j'ai pas le choix lol !!!! Merci pour ton aide !!!

@micalement, eldered

++

mercredi 31 décembre 2003 à 13:47:15 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

apsmedia


salut
j'ai lu ton code pourais tu me donner le code pour la réponse à ta question?

mercredi 31 décembre 2003 à 18:43:08 | Re : Poiteur de la souris : comment modifier ses coordonnées ?

eldered

Bonjour,

Pour remédier à mon problème, J'ai fait une petite bibliothéque en assembleur avec interruptions,

Tu la trouveras dans cette source :

http://www.cppfrance.com/code.aspx?ID=17856

Celle-ci permet de configurer une zone de déplacement pour la souris et donc de limité la table de jeu {limites entrés en paramétres}.

La bibliothéque te permettra d'autres choses utiles !

void BPMouse_init(); // Initialise la souris.
void BPMouse_affiche(); // Affiche le curseur de la souris.
void BPMouse_efface(); // L'efface.
int BPMouse_getx(); // Obtient l'abscisse.
int BPMouse_gety(); // Obtient l'ordonnée.
int BPMouse_getButton(); // Retourne le bouton pressé.
void BPMouse_setPos(int x, int y); // Modifie la position du curseur à tout momment.
void BPMouse_setzonehoriz(int min, int max); // Definit une zone horizontale.
void BPMouse_setzonevert(int min, int max); // Definit une zone verticalle.

voila , ++

Eldered


1 2

Cette discussion est classé dans : code, modifier, souris, coordonnées, poiteur


Répondre à ce message

Sujets en rapport avec ce message

coordonnées du curseur [ par VVolf ] Bonjour j'aimerais savoir si quelqu'un aurait le bout de code qui me permettrait de connaitre les coordonnées du curseur à tout instant.Bien sur ce co besoin d'aide : liste chainée [ par SemBy ] salutjutilse une liste chainée pour pouvoir traité une structure.declaration de ma structure :struct etu{ char nom[25]; char prenom[25]; Coordonées souris OpenGL [ par goutbouyo ] Salut,Je voudrais récupérer les coordonnées du curseur de ma souris dans ma fenêtre opengl.J'ai réussi à récupérer les coordonnés de la souris dans la code d'une souris en Vcpp [ par kinder ] Hi!Je recherche le code pour piloter une souris (ou un autre périphérique à la con pour en faire un "intérrupteur" on/off), branchée sur le port série Coordonnées de la souris et résolution de l'écran [ par Thanatos ] Bonjour,Comment récupérer et afficher les coordonnées de la souris avec Borland c++ Builder ? Et commment récupérer la résolution de l'écran? recupération des coordonnées de la souris [ par kenza_sana ] BONJOUR SVP je voudrai savoir comment récupérer les coordonnées d'une souris j'a mis:montrer_souris()DC pour le moment je voit la souris mais je voudr modifier la taille d'un controle "StaticText" dynamiquement via code [ par Enzototo ] Bonjour,Je suis grand débutant sur VC .NET mais je connais bien le C et un peu la programmation objet ; j'ai aussi déjà un peu développé sur VC++ 6.Je Souris sous OpenGL + Glut [ par mondrone ] J'ai vu qu'il y avait des fonctions permettant de gérer les appuis de boutons de souris ou de touche de clavier qui donnaient au passage les coordonné MFC visual c++ : comment recupérer les coordonnées da la souris [ par hao21 ] Bonjour.j'aurai aimé savoir comment faire pour récupérer les coordonnées de la souris sur la fenetre quand on clique, pour que lorsque l'on clique sur modifier une ressource existante dans un exe [ par mogwai93 ] bonjour, j'ai essayé le code trouvé dans la msdn pour mettre à jour les ressources d'un exe mon probleme est que ce code ne met pas à jour, mais plut


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

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



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.