abracadabraPDF › Forums › PDF – Général › Couleurs › Répondre à : Couleurs
![](https://www.abracadabrapdf.net/wp-content/uploads/2021/10/bebarth_avatar-80x80.png)
bonjour,
Je viens de regarder ton fichier de plus près et voici mes commentaires.
Le champ de calcul ne sert à rien. Il faut le supprimer
Pour chaque menu déroulant, il faut cocher la case “Valider la valeur sélectionnée immédiatement” et écrire un script de touches personnalisé :
if (!event.willCommit) {
var i=event.target.name.lastIndexOf(".");
var f=this.getField("diff."+Number(event.target.name.substr(i+1)));
f.value=event.changeEx;
f.fillColor=laCouleur(event.changeEx);
}
Les scripts de calcul des champs “diff.” ne servent plus à rien, il faut donc les supprimer. Cela évite d’exécuter 53 script de calcul lorsqu’on modifie 1 menu déroulant. Seul le script de touches personnalisé est exécuté !
Pour faire toutes ces modifications en une fraction de seconde, tu colles dans la console :
for (var i=0; i<53; i++) {
this.getField("sequence."+i).commitOnSelChange=true;
this.getField("sequence."+i).setAction("Keystroke","if (!event.willCommit) {\r\tvar i=event.target.name.lastIndexOf(\".\");\r\tvar f=this.getField(\"diff.\"+Number(event.target.name.substr(i+1)));\r\tf.value=event.changeEx;\r\tf.fillColor=laCouleur(event.changeEx);\r}");
this.getField("diff."+i).setAction("Calculate", "");
}
puis tout sélectionner et ENTER du pavé numérique.
Une petite modification du script de document :
function laCouleur(j) {
switch (Number(j)) {
...
Ci-joint le résultat.
@+
😎