Graph.h - Position Souris

Résolu
Blennoragie Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   -  
Blennoragie Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   -
Salut,

Je fais un prog, et je souhaite que lorsque je clique sur du texte, une action s'éxéxute (ex: ajouter un autre texte), pour cela, j'ai fais un rectangle autour du texte (afin de me repérer dans le graphe) et cela ne fonctionne pas, regardez mon code :

#include <stdio.h>
#include <stdlib.h>
#include <graph.h>

int main(void)
  
{
  
  int x,y;

  InitialiserGraphique();  
  CreerFenetre((Maxx()-800)/2,(Maxy()-600)/2,800,600);

  couleur noir=CouleurParNom("black");

 
  DessinerRectangleC(300,145,170,100,noir);
  EcrireTexte(350,200,"Jouer",2);
  EcrireTexte(350,300,"Score",2);
  EcrireTexte(350,400,"Quitter",2);  
 

  
  SourisPosition();
  x=_X;
  y=_Y;
  
  while(ToucheEnAttente()==0)
    {
      if( _X>300&&_X<470 && _Y>145&&_Y<245 )
	EcrireTexte(350,400,"BBBBB",1);
    }
  
  FermerGraphique();
  
}


Le problème, c'est que ça me prend la coordonnée qu'une fois, et si jamais la coordonnée correspond (au lancement du proogramme), le texte s'affiche avant même que le clic soit effectué. Je bloque la dessus depuis 3 jours, donc si quelqu'un saurait m'aider, je lui en serais grandement reconnaissant.

1 réponse

Blennoragie Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   6
 
Finalement, j'ai réussi, comme cela :

#include <stdio.h>
#include <stdlib.h>
#include <graph.h>

int main(void)
  
{
  
  int x,y;

  InitialiserGraphique();  
  CreerFenetre((Maxx()-800)/2,(Maxy()-600)/2,800,600);

  couleur noir=CouleurParNom("black");

 
  DessinerRectangleC(300,145,170,100,noir);
  EcrireTexte(350,200,"AAAAA",2);
  
  while(!SourisCliquee());
  {
    x=_X;
    y=_Y;
    
    if(_X>300&&_X<470&&_Y>145&&_Y<245)
      {
	EcrireTexte(350,400,"BBBBB",1);
      }
  }
  
  Touche();
  FermerGraphique();
  
}


Par contre, s'il y a mieux, je ne suis pas contre ^^
1