AIDE POUR UN MENU COULEUR D'ECRITURE

cs_ISoKa Messages postés 435 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 17 octobre 2008 - 25 juin 2007 à 15:40
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 - 25 juin 2007 à 15:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43238-aide-pour-un-menu-couleur-d-ecriture

cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
25 juin 2007 à 15:51
Aucune originalité même, mais apparement il voulais juste de l'aide et il s'est trompé de section, il aurait du poster ça dans le forum.

Pour le problème des chiffres en couleur, je suis que cela arrive seulement si le chiffre est le premier caractère du texte et cela est du au fait que tu set la valeur des chiffre inferieur a 10 sans le chiffre 0 (c'est mal dit mais en gros tu met 5 au lieu de 05) donc lorsque tu écris ca donne en gros :
-on considère qu'il n'y a ni gras ni souligné, et qu'il n'y a pas de couleur de fond :

$chr(3) $+ couleur $+ texte

donc si le texte commence par un chiffre, alors la couleur 'buguera' :)
cs_ISoKa Messages postés 435 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 17 octobre 2008
25 juin 2007 à 15:43
mince g oublié mes accolades il faut lire :
if ((%ccc >= 0) && (%ccc <= 15)) { did -c couleurs 03 $calc(%ccc + 2) }
if ((%f >= 0) && (%f <= 15)) { did -c couleurs 05 $calc(%f + 2) }
cs_ISoKa Messages postés 435 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 17 octobre 2008
25 juin 2007 à 15:40
pour les chiffres :
if (($asc($left($1,1)) >= 48) && ($asc($left($1,1)) <= 57)) { goto stop }
vu que tu traite le input il est possible que ca fasse pas le msg derriere donc au lieu de "goto stop" essaye de "msg $active $1-" ptete
pour ce qui est du code:
tu fais des cascades de if, pose des elseifs ou meme mieu essai de regrouper tes lignes de code, je suis sur que :
# if (($did(couleurs,03).text Aucune) || ($did(couleurs,03).text $null)) { set %ccc off }
# if ($did(couleurs,03).text = Blanc) { set %ccc 0 }
# if ($did(couleurs,03).text = Noir) { set %ccc 1 }
# if ($did(couleurs,03).text = Bleu Marine) { set %ccc 2 }
# if ($did(couleurs,03).text = Vert) { set %ccc 3 }
# if ($did(couleurs,03).text = Rouge) { set %ccc 4 }
# if ($did(couleurs,03).text = Marron) { set %ccc 5 }
# if ($did(couleurs,03).text = Violet) { set %ccc 6 }
# if ($did(couleurs,03).text = Orange) { set %ccc 7 }
# if ($did(couleurs,03).text = Jaune) { set %ccc 8 }
# if ($did(couleurs,03).text = Vert clair) { set %ccc 9 }
# if ($did(couleurs,03).text = Bleu Ciel foncé) { set %ccc 10 }
# if ($did(couleurs,03).text = Bleu Ciel) { set %ccc 11 }
# if ($did(couleurs,03).text = Bleu) { set %ccc 12 }
# if ($did(couleurs,03).text = Rose) { set %ccc 13 }
# if ($did(couleurs,03).text = Gris) { set %ccc 14 }
# if ($did(couleurs,03).text = Gris Clair) { set %ccc 15 }
# if (($did(couleurs,05).text Aucune ) || ($did(couleurs,05).text $null)) { set %f 99 }
# if ($did(couleurs,05).text == Blanc) { set %f 0 }
# if ($did(couleurs,05).text == Noir) { set %f 1 }
# if ($did(couleurs,05).text == Bleu Marine) { set %f 2 }
# if ($did(couleurs,05).text == Vert) { set %f 3 }
# if ($did(couleurs,05).text == Rouge) { set %f 4 }
# if ($did(couleurs,05).text == Marron) { set %f 5 }
# if ($did(couleurs,05).text == Violet) { set %f 6 }
# if ($did(couleurs,05).text == Orange) { set %f 7 }
# if ($did(couleurs,05).text == Jaune) { set %f 8 }
# if ($did(couleurs,05).text == Vert clair) { set %f 9 }
# if ($did(couleurs,05).text == Bleu Ciel foncé) { set %f 10 }
# if ($did(couleurs,05).text == Bleu Ciel) { set %f 11 }
# if ($did(couleurs,05).text == Bleu) { set %f 12 }
# if ($did(couleurs,05).text == Rose) { set %f 13 }
# if ($did(couleurs,05).text == Gris) { set %f 14 }
# if ($did(couleurs,05).text == Gris Clair) { set %f 15 }
peut etre fai en une ligne de code si on y reflechi un peu vu ke c'est strictement la meme action qui se fai à chaque fois.

# did -a couleurs %combo Blanc
# did -a couleurs %combo Noir
# did -a couleurs %combo Bleu Marine
# did -a couleurs %combo Vert
# did -a couleurs %combo Rouge
# did -a couleurs %combo Marron
# did -a couleurs %combo Violet
# did -a couleurs %combo Orange
# did -a couleurs %combo Jaune
# did -a couleurs %combo Vert clair
# did -a couleurs %combo Bleu Ciel foncé
# did -a couleurs %combo Bleu Ciel
# did -a couleurs %combo Bleu
# did -a couleurs %combo Rose
# did -a couleurs %combo Gris
# did -a couleurs %combo Gris Clair
devient : didtok %combo 59 Noir;blanc;Bleu Marine;etc...

# if (%ccc == 0) { did -c couleurs 03 2 }
# if (%ccc == 1) { did -c couleurs 03 3 }
# if (%ccc == 2) { did -c couleurs 03 4 }
# if (%ccc == 3) { did -c couleurs 03 5 }
# if (%ccc == 4) { did -c couleurs 03 6 }
# if (%ccc == 5) { did -c couleurs 03 7 }
# if (%ccc == 6) { did -c couleurs 03 8 }
# if (%ccc == 7) { did -c couleurs 03 9 }
# if (%ccc == 8) { did -c couleurs 03 10 }
# if (%ccc == 9) { did -c couleurs 03 11 }
# if (%ccc == 10) { did -c couleurs 03 12 }
# if (%ccc == 11) { did -c couleurs 03 13 }
# if (%ccc == 12) { did -c couleurs 03 14 }
# if (%ccc == 13) { did -c couleurs 03 15 }
# if (%ccc == 14) { did -c couleurs 03 16 }
# if (%ccc == 15) { did -c couleurs 03 17 }

devient if ((%ccc >= 0) && (%ccc <= 15)) { did -c couleurs 03 $calc(%ccc + 2)

idem pour
# if (%f == 0) { did -c couleurs 05 2 }
# if (%f == 1) { did -c couleurs 05 3 }
# if (%f == 2) { did -c couleurs 05 4 }
# if (%f == 3) { did -c couleurs 05 5 }
# if (%f == 4) { did -c couleurs 05 6 }
# if (%f == 5) { did -c couleurs 05 7 }
# if (%f == 6) { did -c couleurs 05 8 }
# if (%f == 7) { did -c couleurs 05 9 }
# if (%f == 8) { did -c couleurs 05 10 }
# if (%f == 9) { did -c couleurs 05 11 }
# if (%f == 10) { did -c couleurs 05 12 }
# if (%f == 11) { did -c couleurs 05 13 }
# if (%f == 12) { did -c couleurs 05 14 }
# if (%f == 13) { did -c couleurs 05 15 }
# if (%f == 14) { did -c couleurs 05 16 }
# if (%f == 15) { did -c couleurs 05 17 }

qui devient
if ((%f >= 0) && (%f <= 15)) { did -c couleurs 05 $calc(%f + 2)

En fin bref bcp d'optimisation possible à mon sens et pas spécialement d'originalité.
Rejoignez-nous