bonjour;
j'aimerais pouvoir faire fonctionner des boutons indépendamment les uns des autres;mais la couleur change en même temps sur l'autre bouton comment résoudre ce problème?
merci.
boolean bouton=true; void setup() { size(500,500); } void draw() { rect(100,100,30,30); rect(150,100,30,30); } void mousePressed() { if(bouton==true&& mouseX>100&&mouseX<130&&mouseY>100&&mouseY<130) { fill(0,0,255); bouton=false; } else { if(mouseX>100&&mouseX<130&&mouseY>100&&mouseY<130) { bouton=true; fill(0,255,255); } } rect(100,100, 30,30); }
Hors ligne
Dans ta boucle la méthode fill() est valable quelque soit l'objet à remplir. Il faut individualiser les objets à remplir d'une couleur :
boolean bouton1, bouton2; void setup() { size(500, 500); bouton1 = false; bouton2 = false; } void draw() { if (bouton1) { fill(0, 0, 255); } else { fill(0, 255, 255); } rect(100, 100, 30, 30); if (bouton2) { fill(0, 0, 255); } else { fill(0, 255, 255); } rect(150, 100, 30, 30); } void mousePressed() { if ((mouseX > 100) && (mouseX < 130) && (mouseY > 100) && (mouseY < 130)) { bouton1 = !bouton1; } if ((mouseX > 150) && (mouseX < 180) && (mouseY > 100) && (mouseY < 130)) { bouton2 = true; } } void mouseReleased() { if (bouton2) { bouton2 = false; } }
Sinon, il y a la librairie controlP5 qui fonctionne très bien.
Si tu veux, faire tes propres boutons, je t'encourage à utiliser les classes pour que ton code soit lisible et réutilisable.
Hors ligne
Lorsque tu cliques la couleur de remplissage change et donc tant que tu ne specifies pas d'autre couleur tous les éléments dessinés dans le draw() prendront cette couleur.
Solution:
boolean bouton=true; color c1 = color(255); color c2 = color(0); void setup() { size(500,500); } void draw() { fill (c1); rect(100,100,30,30); fill (c2); rect(150,100,30,30); } void mousePressed() { if(bouton==true&& mouseX>100&&mouseX<130&&mouseY>100&&mouseY<130) { c1= color(0,0,255); bouton=false; } else { if(mouseX>100&&mouseX<130&&mouseY>100&&mouseY<130) { bouton=true; c1= color(0,255,255); } } }
Hors ligne
Mushussu a été plus rapide que moi et mon téléphone... mais du coup 2 solutions au problème
Hors ligne
je vous remercies pour vos réponses,j'avais cherchez la librairie IP5,mais je ne l'avais pas trouvez,mais je viens de mettre la main dessus ,controlIP5.
merci encore.
Fabrice.
Hors ligne