Position de la souris en C - Programmation
Marsh Posté le 12-04-2001 à 06:31:17
et tu veux afficher le chiffre 1?
Un sprintf(buffer, "%i", mouse_x) serait le bienvenu.
A+,
Marsh Posté le 12-04-2001 à 06:34:14
Non ... dsl je me suis mal expliqué. Je veux pouvoir afficher les coordonnées de la souris à l'écran d'après le code que j'ai.
Marsh Posté le 12-04-2001 à 13:59:03
allez poussez les gars sa va sortir !!!
que veux tu de plus Un4GivN ?
Marsh Posté le 12-04-2001 à 14:05:35
Je veux une procédure qui affiche les coordonnées de la souris en C en se basant principalement sur les interruptions et de préférence n'utiliser que <dos.h>.
Ce que je ne comprend pas c'est quand j'appelle l'interruption, je reçois les caractères ascii au lieu des nombres et je ne sais pas comment les convertir.
Marsh Posté le 12-04-2001 à 16:32:59
LAISSEZ FAIRE ! J'ai trouvé...
void aff_pos_souris(void)
{
int mouse_x;
int mouse_x1;
int mouse_y;
int mouse_y1;
union REGS reg;
reg.x.ax = 0x03;
int86(0x33, ®, ®);
reg.x.cx = reg.x.cx / 8;
reg.x.dx = reg.x.dx / 8;
mouse_x = (reg.x.cx / 10) + 48;
mouse_x1 = (reg.x.cx %10) + 48;
mouse_y = (reg.x.dx / 10) + 48;
mouse_y1 = (reg.x.dx %10) + 48;
affiche_car(3, 69, bleu, green, mouse_x);
affiche_car(3, 70, bleu, green, mouse_x1);
affiche_car(3, 75, bleu, green, mouse_y);
affiche_car(3, 76, bleu, green, mouse_y1);
}
Ca marche super bien
Marsh Posté le 12-04-2001 à 05:36:07
void aff_pos_souris(void)
{
int mouse_x;
int mouse_x1;
int mouse_y;
int mouse_y1;
union REGS reg;
reg.x.ax = 0x03;
int86(0x33, ®, ®);
mouse_x = (reg.x.cx / 16) + 48;
mouse_x1 = (reg.x.cx / 64) + 48;
mouse_y = (reg.x.dx / 16) + 48;
mouse_y1 = (reg.x.dx / 8) + 48;
affiche_car(3, 69, bleu, green, mouse_x);
affiche_car(3, 70, bleu, green, mouse_x1);
affiche_car(3, 75, bleu, green, mouse_y);
affiche_car(3, 76, bleu, green, mouse_y1);
}
J'essaye de faire afficher les coordonnées de la souris en MS-DOS. Quand la coordonné serait 1, je reçois le CARACTÈRE ascii 1 ( le petit ) ... pouvez-vous m'aidez ?