Donnez vie à vos documents numériques !
 

michel c.

Toutes mes réponses sur les forums

Affichage de 99 réponses de 1 à 99 (sur un total de 487)
  • Auteur
    Réponses
  • en réponse à : Script qui marche en partie #75945
    michel c.
    Participant

    Merci, je viens de tester et effectivement, le script est beaucoup plus rapide !

    en réponse à : Liste de Choix et de Sous-choix #75919
    michel c.
    Participant

    J’ai fait ça, je ne sais pas si c’est ce que tu souhaitais.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Boite de dialogue #75880
    michel c.
    Participant

    Je viens de réussir comme un grand.

    var x1 = this.mouseX;
    var y1 = this.mouseY;
    var x2 = x1+45;
    var y2 = y1+18;

    this.getField("info."+P2).rect = [x1, y1, x2, y2];

    this.getField("info."+P2).display = display.visible;

    • Cette réponse a été modifiée le il y a 3 semaines et 6 jours par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Boite de dialogue #75878
    michel c.
    Participant

    Merci, je vais faire comme ça.

    Est il possible que le champ en question s’affiche à l’endroit ou se trouve le pointeur de la souris?

    En pièce jointe mon fichier

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Dupliquer des boutons #75874
    michel c.
    Participant

    Merci beaucoup, j’ai pu faire ce que je voulais et j’ai gagné beaucoup de temps …

    en réponse à : Dupliquer des boutons #75862
    michel c.
    Participant

    Effectivement, le 1er indice (a) des noms de boutons LinkT.a.b n’est pas le même sur chaque page.

    en réponse à : Action pour ouvrir une page web par script #75857
    michel c.
    Participant

    En tout cas, c’est déjà super. Ça me fait gagner un temps fou.

    Merci beaucoup

     

    en réponse à : Action pour ouvrir une page web par script #75855
    michel c.
    Participant

    Merci beaucoup, c’est impec !

    en réponse à : Action pour ouvrir une page web par script #75851
    michel c.
    Participant

    Non, mon script n’est pas bon, je viens de mettre ça en fonction et j’ai modifié les scripts ainsi mais ça ne fonctionne pas…

    Je ne vois pas ou ça coince…

    function addLink(a) {
    var nomBoutons=[];
    for (var k=0; k<10; k++) nomBoutons.push(this.getField("LinkT."+a+"."+k).buttonGetCaption());
    for (var k=0; k<10; k++) {
    if (this.getField("LinkT."+a+"."+k).buttonGetCaption()=="...") break;
    }
    if (k==10) app.alert("Tous les boutons renvoient à une URL.",3);
    //
    var bDialogue={
    initialize: function(bDialogue) {
    this.cbInit=true;
    bDialogue.enable({url0: true});
    this.loadDefaults(bDialogue);
    },
    loadDefaults: function(bDialogue) {
    bDialogue.load({
    cb00: false,
    rd00: true,
    url0: "http://www.",
    });
    bDialogue.insertEntryInList({"menu":{"- Indices -": 0}});
    bDialogue.insertSeparatorEntryInList("menu");
    for (var i=0; i<10; i++) {
    if (i!=k) var par=-1;
    else var par=1;
    eval("bDialogue.insertEntryInList({\"menu\":{\""+i+"\": "+(par*(i+1))+"}});");
    }
    },
    cb00: function(bDialogue) {
    this.cbInit=!this.cbInit;
    bDialogue.enable({init: this.cbInit});
    },
    quelBtRd: function (oRslt) {
    for (var i=0; i<=1; i++) {
    if (oRslt["rd0"+i]) {
    switch (i) {
    case 0:
    resBtRd="Non";
    break;
    case 1:
    resBtRd="Oui";
    }
    }
    };
    return resBtRd;
    },
    validate: function(bDialogue) {
    var oRslt=bDialogue.store();
    var elements=bDialogue.store()["menu"];
    for (var i in elements) {
    if (elements>0) indice=i;
    }
    if (indice=="- Indices -") {
    app.alert("Veuillez sélectionner l'indice d'un champ;.",3);
    return false;
    } else {
    initialiser=oRslt["cb00"];
    if (initialiser) {
    texteBouton="...";
    texteURL="";
    return true;
    } else {
    texteBouton=oRslt["nmbt"];
    var testOK0=true;
    if (!/^(\w|\W)+( (\w|\W)+)*$/.test(texteBouton)) var testOK0=false;
    if (!testOK0) app.alert("Veuillez indiquer un nom pour le bouton.",3);
    var testOK1=true;
    texteURL=oRslt["url0"];
    if (!/^(https?:\/\/)?([\w-]+(\.[\w-]+)+)(:\d+)?(\/[^\s]*)?$/i.test(texteURL)) var testOK1=false;
    if (!testOK1) app.alert("Veuillez renseigner une URL correcte.",3);
    cAc=this.quelBtRd(oRslt);
    if (nomBoutons[indice]!="...") {
    if (cAc=="Non") {
    app.alert("Le bouton d'indice \""+indice+"\" est déjà renseigné.",3);
    return false;
    } else {
    var reponse=app.alert("Le bouton d'indice \""+indice+"\" est déjà renseigné.\rSouhaitez-vous réellement le modifier ?",3,2);
    if (reponse==3) return false;
    }
    }
    var testOK=testOK0 && testOK1;
    return testOK;
    }
    }
    },
    description: {
    name: "Bouton vers URL",
    first_tab: "cb00",
    elements: [
    {
    type: "cluster", //
    elements: [
    {
    type: "static_text",
    name: "Indice du bouton",
    font: "dialog",
    bold: true,
    },
    {
    type: "popup",
    item_id: "menu",
    alignment: "align_fill",
    //width: 150,
    },
    {
    type: "check_box",
    alignment: "align_center",
    item_id: "cb00",
    name: " Réinitialiser le bouton",
    },
    {
    type: "gap",
    height: 5
    },
    {
    type: "cluster",
    item_id: "init",

    elements: [
    {
    type: "static_text",
    name: "Texte pour le bouton",
    font: "dialog",
    bold: true,
    },
    {
    type: "edit_text",
    item_id: "nmbt",
    alignment: "align_fill",
    },
    {
    type: "gap",
    height: 5
    },
    {
    type: "static_text",
    name: "URL à atteindre",
    font: "dialog",
    bold: true,
    },
    {
    type: "edit_text",
    item_id: "url0",
    alignment: "align_fill",
    },
    {
    type: "gap",
    height: 5
    },
    {
    type: "static_text",
    name: "Modifier le bouton si renseigné ?",
    font: "dialog",
    bold: true,
    },
    {
    type: "view",
    alignment: "align_center",
    align_children: "align_row",
    elements: [
    {
    type: "radio",
    group_id: "gr00",
    item_id: "rd00",
    name: " Non",
    },
    {
    type: "radio",
    group_id: "gr00",
    item_id: "rd01",
    name: " Oui",
    },
    ]
    },
    ]
    },
    {
    type: "gap",
    height: 5
    },
    {
    type: "ok_cancel",
    },
    ]
    },
    ]
    }
    };
    if("ok"==app.execDialog(bDialogue)){
    if (initialiser) {
    this.getField("LinkT.1."+indice).setAction("MouseUp","//");
    this.getField("LinkT.1."+indice).buttonSetCaption("...");
    this.getField("LinkT.1."+indice).fillColor=color.ltGray;
    } else {
    this.getField("LinkT.1."+indice).setAction("MouseUp","app.launchURL(\""+texteURL+"\");");
    this.getField("LinkT.1."+indice).buttonSetCaption(texteBouton);
    this.getField("LinkT.1."+indice).fillColor=color.green;
    }
    }
    }

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Action pour ouvrir une page web par script #75847
    michel c.
    Participant

    Merci mille fois, c’est super, ça fonctionne à merveille.

    Je n’ai pas pdf expert mais pdf Xchange editor mais le premier fichier ne fonctionnait pas.

    Je viens de faire une modif pour avoir plusieurs boutons qui ajoutent des liens sur des boutons ayant un premier indice différent.

    J’ai l’impression que ça fonctionne bien

     

    • Cette réponse a été modifiée le il y a 1 mois par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Action pour ouvrir une page web par script #75831
    michel c.
    Participant

    Non, je cherche encore, c’est plus complexe que je ne le pensais.

    J’en suis à la phase ou je cherche des scripts sur le net et j’essaye de les décortiquer pour savoir comment les adapter.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Action pour ouvrir une page web par script #75815
    michel c.
    Participant

    Super, merci. D’ici là je vais chercher pour voir si j’y arrive.

    en réponse à : Action pour ouvrir une page web par script #75799
    michel c.
    Participant

    Je pense que j’ai réussi.

    J’aimerais aussi pouvoir me passer des champs LaT.1 et NoLieT.1 et pouvoir saisir ces informations dans la même boite de dialogue que celle demandant le nom à afficher au bouton.

    Je n’arrive pas à savoir comment faire pour avoir tout ceci dans la même boite de dialogue…

     

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Action pour ouvrir une page web par script #75795
    michel c.
    Participant

    Merci beaucoup, je voulais savoir s’il était possible dans le cas ou une Url est déjà affectée à un bouton que la boite de dialogue demande si on veut écraser l’Url existante ou annuler?

    Je vais commencer à réfléchir à ça. J’espère trouver avant la fin du week-end

    en réponse à : Action pour ouvrir une page web par script #75771
    michel c.
    Participant

    Merci beaucoup, ça fonctionne très bien. J’aimerais savoir si on peut :

    • lorsqu’on clique sur Ajouter le lien, avoir une boite de dialogue demandant le texte qui apparaîtra sur le bouton?
    • Avoir les éléments de liste déroulante soient générés en fonction du dernier indice (b) des champs LinkT.a.b
    • Avoir un message d’alerte si il y a déjà un lien associé au bouton pour éviter qu’il soit écrasé par erreur

     

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Boite de dialogue #75750
    michel c.
    Participant

    Merci, ça fonctionne avec PDF XChange editor

    en réponse à : Action pour ouvrir une page web par script #75722
    michel c.
    Participant

    Je viens de tester ceci, je pense que je ne suis pas loin…

    var i = event.target.name.substr(6);
    var j = this.getField("NoLien."+i).value;
    var lien = this.getField("LaC."+i).value;

    //ajouter le code permettant d'ouvrir le lien dont l'adresse
    //est contenue dans le champ : this.getField("Links."+i+"."+j).value

    this.getField("Links."+i+"."+j).setAction("MouseDown", app.launchURL(lien));

    this.getField("LaC."+i).value == "";

     

    Pour l’instant ça ne marche pas …

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Action pour ouvrir une page web par script #75720
    michel c.
    Participant

    Merci mais je me suis mal exprimé et en plus le fichier joint n’a pas été lié.

    En fait, je voudrais que lorsque je saisis un lien dans le champ Lien.i et que je sélectionne le numéro de lien dans le champ NoLien.i ; alors le lien saisi soit ajouté à une action souris basse sur le lien Links.i.j (ou j est la valeur d’export du champ NoLien.i)

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Ajout d’un code #75707
    michel c.
    Participant

    Merci beaucoup…!

    Tu m’as fait gagner de précieuses minutes qui auraient été très chiantes…

    en réponse à : Calcul filetages #75704
    michel c.
    Participant

    Chez moi ça ne fonctionne pas, ça affichait la valeur précédemment sélectionnée dans le tableau.

    J’ai fait une petite modif en ajoutant un bouton valider sous la liste déroulant (j’ai également remplacé le “ç” de perçage par un “c” dans le nom de champ).

    Sinon, tu compte faire évoluer le formulaire pour que ça calcule les différents diamètres, hauteur de filet… ?

    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Applications mobiles #75695
    michel c.
    Participant

    Merci pour ce retour. Sur smartphone j’aurais besoin de feuilles de calculs assez simple mais nécessitant parfois de lignes de code.

    Par exemple pour calculer des cotes en menuiserie (un de mes hobbies).

    Pour l’instant ça passe avec du pdf mais parfois je tâtonne et je remplace des bouts de codes par d’autres jusqu’à ce que ça marche.

    Et je me demandais si pour des applications simples qui tournent uniquement en local c’était complexe ou pas.

    Sinon apparemment pour dart, si j’ai bien compris, en sortie on peut faire des appli pour Android et iPhone.

    en réponse à : Ajout d’un code #75688
    michel c.
    Participant

    Merci beaucoup.

    Et par miracle, y aurait-il une solution pour mettre un code différent dans chaque champ.

    Par exemple un code qui serait :

    this.getField(“Vol.INDICE”).value = this.getField(“JSerie.INDICE”).value * this.getField(“JReps.INDICE”).value * this.getField(“JCharge.INDICE”).value;

    Que l’indice 0 soit mis en script de calcul du champ Vol.0

    l’indice 1 soit mis en script de calcul du champ Vol.1  et ainsi de suite…

    ?

    Le code précédent ne fonctionne pas sur smartphone…

    J’ai testé pas mal de codes différents mais seul celui-ci semble fonctionner sous android.

    Merci

    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    en réponse à : Sauvegarde prefixe date #75673
    michel c.
    Participant

    Bonsoir, j’ai essayé rapidement eZ pdf Reader et aucun script ne fonctionne alors qu’ils fonctionnaient avec adobe acrobat sous android.

    Il y a peut être une option de sécurité à activer ou à désactiver…

    Je regarderais plus en détail demain.

    Merci

    en réponse à : Sauvegarde prefixe date #75656
    michel c.
    Participant

    Je viens d’adapter un script trouvé sur le net.

    ça fonctionne sous windows mais pas sous android :

    var date = util.printd("yyyy.mm.dd", new Date());
    var newFileName = date + "-nomdefichier.pdf";
    // récuperer le chemin où se trouve actuellement le fichier
    var filePath = this.path.replace(this.documentFileName, "");
    // créer le nouveau chemin complet
    var newFullFilePath = filePath + newFileName;
    try {
    this.saveAs(newFullFilePath);
    } catch (e) {
    app.alert("Erreur, l'enregistrement suivant est impossible : " + newFullFilePath);
    }

    en réponse à : Générer des nombres se trouvant dans une table commune #75644
    michel c.
    Participant

    J’ai essayé ceci en action de frappe : this.event.value = event.commitKey; , mais les valeurs renvoyées sont 2 pour les touches enter et return et 1 pour les clics de souris…

    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Générer des nombres se trouvant dans une table commune #75642
    michel c.
    Participant

    Oui, je ne suis pas trop familier avec l’anglais, mais si je comprend bien, le mystère n’est pas éclairci…

    Y-a-t-il un code qui permettrait d’afficher dans un champ la valeur correspondant à la touche qui a été pressée ?

    • Cette réponse a été modifiée le il y a 1 mois et 2 semaines par michel c..
    en réponse à : Générer des nombres se trouvant dans une table commune #75609
    michel c.
    Participant

    Effectivement, je n’avais pas répondu …

    J’avais certainement cherché l’explication sans trouver de réponse. D’ailleurs je n’en trouve toujours pas….

    Concernant ce code j’ai du le trouver sur un forum anglophone certainement.

    en réponse à : Générer des nombres se trouvant dans une table commune #75604
    michel c.
    Participant

    Je vais faire avec …


    @Merlin
    : Pour le paramètre nIcon, je vais m’en occuper, c’est le genre de truc que je vois à la fin.

    Merci pour tout !

    en réponse à : Calcul d’un pourcentage mais pas que… #75596
    michel c.
    Participant

    Sinon tu peux faire ça.

    Est ce que c’est ce que tu voulais faire ?

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Générer des nombres se trouvant dans une table commune #75594
    michel c.
    Participant

    Pourtant avec ce fichier, ça fonctionne (il vient d’un ancien fil de discussion, d’ou mon event.commitKey = 13)

    Par contre si je met en action de format la ligne : if (event.commitKey = 13) Verif(); dans le champ Result pour le fichier sur les réductions de fractions, si la réponse saisie est bonne et que j’appuie sur la touche entrée, le message Bravo apparait dans la boite de dialogue, mais ça enchaine ensuite sur l’apparition de la boite de dialogue indiquant que la réponse saisie est incorrecte…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Générer des nombres se trouvant dans une table commune #75590
    michel c.
    Participant

    Merci beaucoup, je vais me pencher là dessus.

    Concernant les scripts de documents, ils se trouvent dans l’onglet formulaires puis Document

    Les scripts des différents champs et boutons se trouvent sur le volet de droite après avoir fait un clic droit puis propriété sur le champ voulu.

    Il y a plusieurs rubriques pour ces scripts : Action ; valeur de format ; validation de la valeur et calcul de la valeur.

    Avec la version gratuite du logiciel, je ne sais pas s’il est possible de modifier ces scripts par contre

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Générer des nombres se trouvant dans une table commune #75586
    michel c.
    Participant

    Ce n’est pas ce qu’a fait BB dans sa proposition ?

    if (event.commitKey==2) Verif();

    en réponse à : Générer des nombres se trouvant dans une table commune #75583
    michel c.
    Participant

    La touche entrée ne marche pas. L’expression régulière marche nickel.

    Je n’ai pas d’erreur à la console.

    en réponse à : Générer des nombres se trouvant dans une table commune #75581
    michel c.
    Participant

    Merci beaucoup, ça fonctionne parfaitement avec adobe reader DC mais pas avec pdf XChange editor…

    J’aimerais biens des commentaires pour les lignes 3 ; 4 ; 5  ; 8 et 9

    Merci

    en réponse à : Générer des nombres se trouvant dans une table commune #75561
    michel c.
    Participant

    Re-bonjour, toujours dans ce même script, pour gagner du temps, je voudrais que les élèves puissent valider par la touche entrée pour ne pas avoir à cliquer sur le bouton alors qu’ils ont les mains sur le clavier.

    J’ai donc tenté de mettre en script sur le champ Result le code suivant : if (event.commitKey = 13) Verif();

    Mais ça fout vraiment le bazar

    Je pense que c’est dû au fait qu’au moment ou j’appuie sur la touche entrée, la valeur ne ce champ est considérée comme non remplie…

    LIEN

    Merci

    en réponse à : Changement de couleur dans champ #75559
    michel c.
    Participant

    Bonjour, ça me fait penser à un truc, il serait possible d’avoir un script type feuille de style dans lequel on pourrait définir les couleurs, taille de police, type de police … en fonction du nom d’un champ…

    ça me faciliterai la tâche pour mes cours…

    en réponse à : Générer des nombres se trouvant dans une table commune #75558
    michel c.
    Participant

    Ça fonctionne à merveille, merci beaucoup !

    Il ne me reste plus qu’à corriger les bugs, notamment revoir les modes de calculs des meilleurs scores.

    Pour ceux que ça intéresse, le dernier fichier : LIEN

    en réponse à : Générer des nombres se trouvant dans une table commune #75555
    michel c.
    Participant

    Merci beaucoup, ça fonctionne bien pour avoir des fractions simplifiables, il y a par contre parfois le numérateur = au dénominateur

     

    LIEN

    • Cette réponse a été modifiée le il y a 1 mois et 3 semaines par michel c..
    en réponse à : Générer des nombres se trouvant dans une table commune #75547
    michel c.
    Participant

    Oups, j’ai oublié le lien…

     

    LIEN

    en réponse à : Générer des nombres se trouvant dans une table commune #75540
    michel c.
    Participant

    Bonjour, j’avais apporté des modifs au document mais je m’étais emmêlé les pinceaux. Voici une autre version avec moins de problèmes…

    En gros, lors de la génération du numérateur et du dénominateur de façon aléatoire (script de document : hasard)

    • j’aimerais ne pas avoir le dénominateur = au numérateur
    • j’aimerais avoir une fraction qui est simplifiable, car trop souvent il n’y a rien à faire d’autre que de recopier la fraction.

    Merci

    en réponse à : Raccourcir un script #75533
    michel c.
    Participant

    Je n’utilise jamais chat GPT mais si j’ai un peu de temps je vais voir s’il est capable de sortir une liste exhaustive des duos et trios de lettres de ce type.

    Je vais déjà commencer à réfléchir à un prompt…

    en réponse à : Générer des nombres se trouvant dans une table commune #75529
    michel c.
    Participant

    J’ai repris un script de BB pour générer 2 nombres aléatoires compris entre une valeur min et une valeur max.

    Ce sont les valeurs qui apparaissent dans les champs Var.1.3 et Var.2.3

    J’aimerais maintenant que ces valeurs générées aléatoirement le soient uniquement si elles ont un facteur commun….

     

    Merci

    LIEN

    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    en réponse à : Raccourcir un script #75513
    michel c.
    Participant

    Sinon j’ai testé la version non censurée avec des élèves ce matin et ça s’avère terriblement efficace. En moins d’une heure, ils ont tous sans exception retenu les 3 formules, il faut encore un peu d’entrainement à certains pour extraire la longueur recherchée de l’équation mais ça sera vite réglé aussi.

    Ce qui m’impressionne c’est leur persévérance lorsqu’ils travaillent sur ce type de formulaire. ça m’encourage à en faire davantage.

    Je tenais à vous remercier car sans vous je ne serais jamais arrivé à faire ce que j’avais en tête.

    En pièce jointe, une version fonctionnelle non censurée.

    Ce n’est pas encore la version définitive, je vais retravailler les textes d’aide, peaufiner la mise en page, aplatir les traits et concocter une petite vidéo tuto.

    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75511
    michel c.
    Participant

    J’avais fait une recherche avec les duos et trios de lettres sur les plaques d’immatriculation.  Le site sur lequel je suis tombé n’a pas fourni une liste exhaustive apparemment.

    Au vu des nombreux exemples que tu donnes, je crois que je vais suivre ton conseil, sans quoi ça va être d’avoir une liste des duos et trios de lettres à bannir…

     

    en réponse à : Raccourcir un script #75509
    michel c.
    Participant

    Sinon et c’est peut être beaucoup plus simple, exclure les lettres P, N, O, R et W des lettres générées.

    En faisant ça je n’aurait je pense aucun duo ou trio de lettres qui pose problème…

    en réponse à : Ajout de line de code avec JavaScript #75504
    michel c.
    Participant

    En fait je me suis embarqué dans un truc qui me dépasse un peu.

    J’essaye d’adapter 2 scripts que BB m’avait concocté pour un autre document mais j’avoue que je m’y perd un peu.

    En gros, j’aimerais que lorsque je clique sur générer les questions sur la page2 du document :

    • chaque ligne du champ entreeListe soit propulsée comme élément des listes Q.a.b (la valeur a sera prise dans le champ NQuest)
    • que chaque champ Q.a.b ait comme action en “souris entre” : fillDropdown();
    • que chaque champ Q.a.b ait comme “action de frappe” : if (!event.willCommit) {selection();}
    • l’entrée 2 des champs Q.a.b soit propulsée comme valeur du champs R.a.1 (car l’entrée 1 est le symbole -)
    • l’entrée 3 des champs Q.a.b soit propulsée comme valeur du champs R.a.2 et ainsi de suite
    • Que soient retirées des entrées des listes Q.a.b les éléments déjà sélectionnés

     

    • Le script qu’avait fait BB et que j’essaye d’adapter propulse dans les listes des valeurs différentes des éléments affichés mais je n’ai plus besoin de ça ici.
    • Je n’ai plus besoin non plus d’avoir le tri des éléments ni le comptage des éléments dans les champs groupe.a.b
    • Je n’ai plus besoin non plus des champs Group.a

    En fait dans ce document, les élèves s’y perdent car ils ne savent plus quelles pièces ils ont déjà saisie…

    J’essaye donc tant bien que mal à adapter ces scripts mais j’avoue que ça me donne du fil à retordre car je suis loin de maitriser chaque ligne de code…

    Ce document comporte beaucoup de scripts, mais il n’y a que 2 scripts concernés : celui affecté au bouton generateur et le script de document Init

    J’ai déjà apporté des modifications aux script initiaux avec plus ou moins de succès…

    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75502
    michel c.
    Participant

    J’ai placé le script dans generLettres, le script s’exécute mais les lettres ne changent pas…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75491
    michel c.
    Participant

    Concrètement ça veut dire que :

    • si la variable pointA == “P” alors les variables pointB et pointC doivent être différentes de S et de C
    • si  pointB == “P” alors  pointC doit être différente de S et de C
    • si (pointA == “F”|| pointA == “R”) alors les variables pointB et pointC doivent être différentes de N
    • si (pointB == “F”|| pointB == “R”) alors la variables  pointC doit être différente de N

    ……

    • Cette réponse a été modifiée le il y a 2 mois par michel c..
    en réponse à : Ajout de line de code avec JavaScript #75490
    michel c.
    Participant

    Ok, merci

    Par contre, je rebondit sur ce sujet mais il n’est pas possible d’ajouter un script affectée à une action à plusieurs champs en même temps?

    J’aimerais affecter le code : fillDropdown(); à 80 listes déroulantes et je suis obligé de le faire manuellement…

     

    Merci

    en réponse à : Raccourcir un script #75489
    michel c.
    Participant

    En fait, ça peut être gênant surtout pour le champ Question.1.1 dont la valeur est la suivante par exemple pour le cas 1

    var debutEnnonce = "Dans le triangle rectangle ci-contre, quelle formule utiliser pour calculer la longueur "
    var milieuEnnonce = ", sachant que "

    this.getField("Question.1.1").value = debutEnnonce +pointA+pointB+ milieuEnnonce + SymbAngle+" = "+angle+"° et "+pointA+pointC+" = "+donnee+" mm ?";

    Comme les variables pointA ; pointB et pointC ont comme valeur des lettres prises aléatoirement, alors les permutations sont possibles je pense

    par contre dans tous les cas, les couples de lettres cités dans le champ Question.1.1 ne peuvent être que

    • pointA+pointB
    • pointA+pointC
    • pointB+pointC
    en réponse à : Raccourcir un script #75486
    michel c.
    Participant

    Çà ne vient pas de là. c’est difficile de savoir d’où vient l’erreur, je n’ai pas de console sur le logiciel adobe…

    Je l’ai fait tester par des élèves qui m’ont permis de corriger quelques erreurs sur mon fichier…

    Il fonctionne très bien sur PDF XChange editor, sauf pour les duos ou trios de lettres interdites qui s’affichent quand même.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : liste déroulante valeur affichée – valeur exportéé #75485
    michel c.
    Participant

    Je viens de trouver comme un grand :

    var f = this.getField(“Dropdown.0”);
    var a = f.currentValueIndices;
    event.value = f.getItemAt(a, false);

    en réponse à : Raccourcir un script #75482
    michel c.
    Participant

    Je pense que c’est dans le script ChoixCas. Je viens de le modifier en mettant du texte en unicode. Je vais installer adobe en rentrant pour voir si ça vient de là. Si c’est ça, je finirai de modifier ce script en y mettant de l’unicode partout ou il faut.

     

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75480
    michel c.
    Participant

    C’est curieux, avec pdf XChange editor, je n’ai pas d’erreur à la console et les lettres sont bel et bien générées…

    Je vais essayer de me pencher là dessus.

    en réponse à : Raccourcir un script #75473
    michel c.
    Participant

    Je viens de m’apercevoir que ça m’a quand même généré le couple de lettre PQ malgré la ligne qui est censée l’exclure…

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75471
    michel c.
    Participant

    Merci, c’est parfait !

    J’avais besoin de ce script pour finaliser un quiz interactif avec des questions et des données qui changent chaque fois que l’utilisateur recommence.

    Le voici en pièce jointe si jamais vous avez besoin de revoir votre trigonométrie…

    Il me reste à vérifier s’ils reste des bugs ou des anomalies.

    Merci encore, je suis très content d’arriver au bout, ça fait plusieurs mois que je suis sur ce document.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Raccourcir un script #75468
    michel c.
    Participant

    Bonjour Je ne suis pas certain d’avoir tout compris mais a priori à partir du moment où on affecte une valeur (lettre) aléatoire à pointA, pointB et pointC on se fiche pas mal de la valeur de “points” puisqu’elle n’y change rien. Ce qui nous donnerait : function generateRandomLetter() { var randomValue = Math.random(); var randomCode = 65 + Math.floor(randomValue * 26); return String.fromCharCode(randomCode); } var pointA = generateRandomLetter(); var pointB = generateRandomLetter(); var pointC = generateRandomLetter(); console.println(pointA + pointB + pointC); On pourrait ensuite détecter les paires interdites mais dis moi d’abord si ça convient.

    Oui, c’est exactement ça, il faudrait juste éviter que la même lettre se retrouve plusieurs fois dans le trio et éviter les paires ou trios interdits.

     

    en réponse à : Raccourcir un script #75465
    michel c.
    Participant

    Je voulais dire plutôt : j’aimerais que soient affectées un trio de 3 lettres de l’alphabet à 3 variables (pointA, pointB et pointC)

    Et non un couple de 3 lettres…

    en réponse à : Renommer indice 2 #75462
    michel c.
    Participant

    Merci beaucoup !

     

    en réponse à : fonction aleatoire #75456
    michel c.
    Participant

    Merci beaucoup !

    en réponse à : Ajout de line de code avec JavaScript #75447
    michel c.
    Participant

    Bonjour, j’ai testé en apportant une petite modif, et je ne comprend pas quel problème vous soulevez…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Vérification et tri #75435
    michel c.
    Participant

    C’est incroyable, je ne savais pas que c’était possible de faire ça !

    Un grand merci et bravo !

    en réponse à : Vérification et tri #75432
    michel c.
    Participant

    C’est exactement ce qu’il me faut. A part l’erreur à l’ouverture c’est parfait.

    Il y a aussi un souci sur l’affichage des groupes sur le tableau de la page 2 lors du clic sur vérifier mais j’ai une idée pour remédier à cela.

     

    en réponse à : Vérification et tri #75419
    michel c.
    Participant

    Oui, ce serait parfait, je ne savais pas que c’était possible.

    en réponse à : Vérification et tri #75414
    michel c.
    Participant

    Merci beaucoup, c’est exactement ce que je voulais.

    Je souhaiterais également lors du clic sur le bouton vérifier (qui est sur la 2ème) page avoir un message d’alerte si un élève a été oublié et un autre si un élève a été positionné 2 fois dans le tableau.

    Je ne vois pas du tout comment je pourrais m’y prendre pour cela…

    Merci

    en réponse à : Renommer indices #75352
    michel c.
    Participant

    Je n’osait pas le demander…C’est magique. Tu as même fait en sorte de ne pas re-créer les champs R.a.b s’ils sont déjà présents…

    Je n’ai plus qu’à intégrer ça au menu admin. Mais ça je sais faire.

    Un grand merci, ça va me faire gagner un temps précieux.

    en réponse à : Renommer indices #75349
    michel c.
    Participant

    Merci !

    ça marche parfaitement

    en réponse à : Renommer indices #75336
    michel c.
    Participant

    J’ai régulièrement des messages qui sont supprimés par le site. Peut-être que les liens vers mon site internet ne sont pas acceptés… Je passe par mon site pour poster des fichiers trop lourds. S’il faut passer par un hébergeur, par lequel dois-je passer?

    Merci

    en réponse à : Renommer indices #75334
    michel c.
    Participant

    Sinon pour résumer, lorsque je crée mes listes déroulantes Q.a.b (celles que les élèves vont utiliser pour saisir leurs réponses) je dois créer ensuite des listes R.a.b contenant les réponses exactes. Je copie colle les champs Q.a.b et je les renommais ensuite une à une en R.a.b

    Lorsque je passe par le fichier renommer_champs_v01.pdf, 

    les listes sont renommées convenablement mais lorsque je copie-colle les champs R.a.b dans mon exercice interactif, le script de vérification qui compare les valeurs des champs Q.a.b avec R.a.b détecte toutes les réponses comme fausses alors que leurs valeurs sont les mêmes…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75333
    michel c.
    Participant

    Merci.

    Voici une vidéo montrant le problème : Vidéo

    en réponse à : Renommer indices #75324
    michel c.
    Participant

    C’est curieux, j’ai essayé 2 fois de poster une réponse mais elle n’apparaît pas…A la 3ème tentative, j’ai ce message :

    Erreur : réponse identique détectée ; il semble que vous l’ayez déjà dit.

    Mais je ne vois pas ma réponse sur le forum.

    Sinon, la voici en pièce jointe dans un pdf…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75318
    michel c.
    Participant

    J’ai un autre souci….

    Je compte me servir de ce fichier pour pouvoir créer plus rapidement des cours ou exercices “interactifs”

    Grosso modo, j’ai des champs que les élèves doivent remplir. Ces champs sont les champs Q.a.b

    Lorsque l’élève clique sur vérifier, la valeur de ces champs sont comparées à des champs R.a.b Si les valeurs sont identiques, alors la réponse est validée.

    Jusqu’à présent, lorsque je crée mon document, je crée les champs Q.a.b puis je les copie et je renomme leurs copies une à une Q.a.b sera renommé en R.a.b

    L’avantage de ce fichier est d’importer les champs Q.a.b et de les renommer en R.a.b en un seul clic.

    Cela fonctionne très bien lorsque les champs sont de type texte, mais lorsqu’il s’agit de menus déroulants, quand je place les fichiers crées par le script, les réponses ne sont plus valides même lorsque les mêmes items ont été choisis pour les champs Q.a.b et R.a.b

    J’espère que ce n’est pas trop confus.

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75304
    michel c.
    Participant

    Merci, effectivement ton script (test-6_BB.pdf) fonctionne bien mieux, je vais partir de cette base. Avec l’ancien, si les champs étaient de type liste déroulante, ils devenaient des champs textes après exécution du script.

    Merci beaucoup.

    J’essayerai demain de faire la petite modif que je souhaite

    en réponse à : Renommer indices #75300
    michel c.
    Participant

    J’ai parfaitement compris. Mon code fonctionne parfaitement pour l’ajout des nouveaux champs. Par contre, je ne sais pas ou placer le code pour retirer les anciens…

    J’ai testé en dehors des boucles try/catch mais ça ne fonctionne pas.

    J’en ai profité pour optimiser un peu le script.

    Il y a un truc que je souhaiterais faire également :

    Si l’option P1 est sélectionnée et que la partie 1 du champ P1 = Q, je souhaiterais que les nouveaux champs crées soient placés au dessus des anciens (hauteur augmentée de la hauteur du champ) mais je ne sais pas si c’est faisable…

     

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75295
    michel c.
    Participant

    Non en fait ça ne marche toujours pas même lorsque je sélectionne P1

    en réponse à : Renommer indices #75293
    michel c.
    Participant

    Merci pour la réponse.

    Pour palier à ce problème, j’ai déclaré 2 variables pour les valeurs des champs Name.3.1 et Name.3.2

    Le problème est résolu pour la modification de la partie 1 mais ça ne change rien lorsque je séléctionne P2…

    function Renommer_c() {

    //récuperer les noms de tous les champs
    for (var i=0; i<this.numFields; i++) {
    var nomChamp=this.getNthFieldName(i);
    //déclarer les variables
    var aN = this.getField("Name.3.1").value;
    var nN = this.getField("Name.3.2").value
    var CaR = this.getField("nom_champ").value;
    var Menu = this.getField("Menu").value;
    //décomposer les noms de champs en 3 parties séparées par les points : P1 ; P2 et P3
    var b = nomChamp.split(".");
    var P1 = (b[0]);
    var P2 = (b[1]);
    var P3 = (b[2]);

    //Si l'on désire modifier la partie 1 et que la partie 1 correspond à l'entrée saisie dans le champ Name.3.1
    if (Menu == 1 && aN == P1) {
    //déclarer la variable P1new (nouveau nom pour la partie 1)
    var P1new = nN;
    try{
    //récupérer les paramètres des champs à renommer
    var ts=this.getField(P1+"."+P2+"."+P3).textSize;
    var tf=this.getField(P1+"."+P2+"."+P3).textFont;
    var rct=this.getField(P1+"."+P2+"."+P3).rect;
    var pg=this.getField(P1+"."+P2+"."+P3).page;
    //créer des nouveaux champs P1new.P2.P3
    var f=this.addField(P1new+"."+P2+"."+P3,"text",pg,rct);
    //app.alert("Champ ajouté : "+P1new+"."+P2+"."+P3);
    f.textSize=ts;
    f.textFont=tf;
    //interrompre le code si erreur
    }catch(e){break}
    //supprimer les anciens champs P1.P2.P3
    this.removeField(P1+"."+P2+"."+P3)
    //app.alert("Champ retiré : "+P1+"."+P2+"."+P3);
    }

    //Si l'on désire modifier la partie 2 et que la partie 2 correspond à l'entrée saisie dans le champ Name.3.1 et que la partie 1 correspond à la variable CaR
    if (Menu == 2 && aN == P2 && CaR == P1) {
    //déclarer la variable P2new (nouveau nom pour la partie 2)
    var P2new = nN;
    try{
    //récupérer les paramètres des champs à renommer
    var ts=this.getField(P1+"."+P2+"."+P3).textSize;
    var tf=this.getField(P1+"."+P2+"."+P3).textFont;
    var rct=this.getField(P1+"."+P2+"."+P3).rect;
    var pg=this.getField(P1+"."+P2+"."+P3).page;
    //créer des nouveaux champs P1.P2new.P3
    var f=this.addField(P1+"."+P2new+"."+P3,"text",pg,rct);
    //app.alert("Champ ajouté : "+P1+"."+P2new+"."+P3);
    f.textSize=ts;
    f.textFont=tf;
    }catch(e){break}
    //interrompre le code si erreur
    //supprimer les anciens champs P1.P2.P3
    this.removeField(P1+"."+P2+"."+P3)
    //app.alert("Champ retiré : "+P1+"."+P2+"."+P3);
    }

    }

    }

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75285
    michel c.
    Participant

    Étrange le fonctionnement de ce script :

    Lorsque je souhaite renommer la partie 1, il va fonctionner uniquement pour les 2nds indices (P3) ayant des valeurs paires.

    Lorsque je souhaite renommer la partie 2 ; même chose, ça fonctionne que pour les 2nds indices ayant des valeurs paires….

    en réponse à : Renommer indices #75283
    michel c.
    Participant

    Bonjour, je viens de commenter mon code :

    function Renommer_c() {

    //récuperer les noms de tous les champs
    for (var i=0; i<this.numFields; i++) {
    var nomChamp=this.getNthFieldName(i);
    //déclarer la variable CaR (Champs à renommer)
    var CaR = this.getField("nom_champ").value;
    //décomposer les noms de champs en 3 parties séparées par les points : P1 ; P2 et P3
    var b = nomChamp.split(".");
    var P1 = (b[0]);
    var P2 = (b[1]);
    var P3 = (b[2]);

    //Si l'on désire modifier la partie 1 et que la partie 1 correspond à l'entrée saisie dans le champ Name.3.1
    if (this.getField("Menu").value == 1 && this.getField("Name.3.1").value == P1) {
    //déclarer la variable P1new (nouveau nom pour la partie 1)
    var P1new = this.getField("Name.3.2").value;
    try{
    //récupérer les paramètres des champs à renommer
    var ts=this.getField(P1+"."+P2+"."+P3).textSize;
    var tf=this.getField(P1+"."+P2+"."+P3).textFont;
    var rct=this.getField(P1+"."+P2+"."+P3).rect;
    var pg=this.getField(P1+"."+P2+"."+P3).page;
    //créer des nouveaux champs P1new.P2.P3
    var f=this.addField(P1new+"."+P2+"."+P3,"text",pg,rct);
    f.textSize=ts;
    f.textFont=tf;
    //interrompre le code si erreur
    }catch(e){break}
    //supprimer les anciens champs P1.P2.P3
    this.removeField(P1+"."+P2+"."+P3)
    app.alert("Fait");
    }

    //Si l'on désire modifier la partie 2 et que la partie 2 correspond à l'entrée saisie dans le champ Name.3.1 et que la partie 1 correspond à la variable CaR
    if (this.getField("Menu").value == 2 && this.getField("Name.3.1").value == P2 && CaR == P1) {
    //déclarer la variable P2new (nouveau nom pour la partie 2)
    var P2new = this.getField("Name.3.2").value;
    try{
    //récupérer les paramètres des champs à renommer
    var ts=this.getField(P1+"."+P2+"."+P3).textSize;
    var tf=this.getField(P1+"."+P2+"."+P3).textFont;
    var rct=this.getField(P1+"."+P2+"."+P3).rect;
    var pg=this.getField(P1+"."+P2+"."+P3).page;
    //créer des nouveaux champs P1.P2new.P3
    var f=this.addField(P1+"."+P2new+"."+P3,"text",pg,rct);
    f.textSize=ts;
    f.textFont=tf;
    }catch(e){break}
    //interrompre le code si erreur
    //supprimer les anciens champs P1.P2.P3
    this.removeField(P1+"."+P2+"."+P3)

    }

    }

    }

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75277
    michel c.
    Participant

    Il y a un truc que je ne comprend pas. Mon script fonctionne mais il y a toujours un champ qui n’est pas renommé…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75274
    michel c.
    Participant

    J’y suis arrivé pour la modification de la partie 1 du nom de champ (P1.P2.P3)

    Par contre mon script ne fonctionne pas quand je souhaite “modifier” la partie 2 P2. J’ai une erreur à la ligne 28…

     

    Merci

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75269
    michel c.
    Participant

    Je vais regarder si j’ai cette fonctionnalité dans pdf XChange. Mais si elle est cachée, alors elle est bien cachée…

    Merci en tout cas. Je vais continuer à bosser sur ce script je ne suis pas très loin d’y arriver je pense.

     

    en réponse à : Renommer indices #75241
    michel c.
    Participant

    Je viens d’essayer le fichier proposé par BB mais ça ne fonctionne pas, j’ai une erreur à la ligne 12…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75239
    michel c.
    Participant

    Je viens de tester pour modifier la première partie ou la 2ème au choix. Mais ça ne fonctionne toujours pas…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75236
    michel c.
    Participant

    Bon j’avance à tâtons, ça marche très partiellement…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Renommer indices #75231
    michel c.
    Participant

    Je viens de retrouver le logiciel, il s’agit de Pdf Studio. Je viens de tester le renommage séquentiel mais ça ne me fait pas gagner de temps.

    Je voulais renommer 30 champs : “Q.7.1” à “Q.7.30” qui se seraient appelés : “R.7.1″ à R.7.30”.

    Et je voulais que ce soit fait respectivement pour chaque champ (que le Q.7.1 devienne R.7.1 et ainsi de suite)

    Cependant le renommage a été fait dans le désordre.

    Je suis donc à la recherche d’un outil ou d’une astuce pour y arriver.

    En gros si je décompose le nom de champ en 3 parties (nom ; indice1 ; indice2), j’aimerais qu’en spécifiant ou en sélectionnant le nom du champ je puisse modifier l’indice 1 et que les indices 2 soient inchangés.

    Si je comprend bien, l’astuce serait de récupérer les propriétés de chaque champ, de créer des nouveaux champs avec les mêmes propriétés mais des noms différents puis d’effacer les champs d’origine.

    Je perdrais je pense au passage les actions liés à ces champs. Mais ça ce n’est pas grave, les champs que je souhaite “renommer” ne seront pas des champs ayant des scripts.

    Merci

    • Cette réponse a été modifiée le il y a 4 mois et 3 semaines par michel c..
    en réponse à : Renommer indices #75229
    michel c.
    Participant

    Je viens de tester un truc à partir d’un script trouvé sur le net mais rien ne se passe. Je cherche encore…

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Centrage des éléments de listes déroulantes #75225
    michel c.
    Participant

    C’est sur libre office writer et non calc pardon.

    Il suffit d’insérer une zone de liste et dans les propriété, on peut aligner à gauche, au centre et à droite.

    Pour finir il suffit d’exporter en pdf.

     

    • Cette réponse a été modifiée le il y a 4 mois et 4 semaines par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Champ image #75221
    michel c.
    Participant

    Merci pour cette solution

    en réponse à : Champ image #75204
    michel c.
    Participant

    Merci beaucoup. J’ai réussi pour cette condition.

    Par contre je n’ai pas réussi pour la suivante :

    if (nomChamp.indexOf("Aide.")==0) {
    if (this.getField(nomChamp).type=="text" || nomChamp.indexOf("_af_image")>0) this.getField(nomChamp).readonly=true;
    else this.getField(nomChamp).readonly=false;
    }

    Ici, je voudrais que pour les champs Aide, les champs de type bouton qui ne sont pas des images soient en readonly = false et que les champs de type texte ainsi que les images en readonly = true

    Merci

     

    en réponse à : Modification de script #75147
    michel c.
    Participant

    Merci

    en réponse à : Tracé arc de cercle #75112
    michel c.
    Participant

    Bonjour, je n’ai absolument pas les compétences en javascript pour y arriver. Je me demandais si quelque chose de ce genre existait.

    Je cherche également des solutions intermédiaires comme passer par un autre logiciel dans lequel je pourrais faire mes dessins puis les copier / coller.

    Mais ou chaque élément peut être déplacé et modifié.

    J’y arrive avec inkscape mais sans pouvoir changer la couleur ni l’épaisseur des traits après avoir copié/collé

     

    Ps : très impressionnant la montre

    • Cette réponse a été modifiée le il y a 6 mois et 2 semaines par michel c..
    en réponse à : Problème de lancement d’un script #75095
    michel c.
    Participant

    Merci, je me suis servi de ton code pour me faire un document qui me sera utile.

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Problème de lancement d’un script #75091
    michel c.
    Participant

    Bonjour, je veux uniquement modifier les caractères accentués.

    Je ne savais pas du tout que l’on pouvait faire ça via la console….

    Merci

    en réponse à : Problème de lancement d’un script #75088
    michel c.
    Participant

    Une question en passant : pour coder cette phrase ainsi : "Voulez vous vraiment supprimer le contenu de tous les champs de
    donn\u00E9es et revenir \u00E0 l'\u00E9tat initial du document
    ?\n\nCette action ne pourra pas \u00EAtre annul\u00E9e.\nSi besoin
    utilisez : menu Fichier : R\u00E9tablir"

    tu as un outil ou un lien qui te permet de faire ça rapidement ou tu connais par coeur l’unicode pour les caractères é ê ; à … et tu glisse ces codes au milieu des mots?

    Jusqu’à présent je mettais toute la phrase en unicode mais c’est plus compréhensible comme ça en relisant la phrase.

    en réponse à : Problème de lancement d’un script #75087
    michel c.
    Participant

    Merci !

    en réponse à : Problème de lancement d’un script #75083
    michel c.
    Participant

    Pour mon 2ème souci, j’ai trouvé une façon détournée de résoudre ce problème.

    Obliger l’utilisateur à cliquer sur démarrer pour faire apparaître la première partie :

    Tant que l’utilisateur ne clique pas sur le bouton, Aucune question ne s’affiche…

    S’il clique sur le bouton, une réinitialisation s’opère avec de nouvelles variables.

    Par contre j’ai un autre souci, en cliquant sur ce bouton la boite de dialogue s’affiche pour demander confirmation.

    J’aimerais que si l’utilisateur répond Non, l’exécution du script s’arrête

    if (cResponse != "Oui") {app.alert("Opération annulée.");

    <strong>commande pour stopper l'exécution du script</strong>

    }

    Merci

    • Cette réponse a été modifiée le il y a 6 mois et 2 semaines par michel c..
    Attachments:
    You must be logged in to view attached files.
    en réponse à : Problème de lancement d’un script #75082
    michel c.
    Participant

    Merci, je ne savais pas pour else if

    en réponse à : Problème de lancement d’un script #75076
    michel c.
    Participant

    Merci pour les réponses.


    @BB
    : J’ai modifié mon script Default ainsi

    function Default() {

    for (var i=0; i<this.numFields; i++) {
    var nomChamp=this.getNthFieldName(i);
    //console.println(i+" - nomChamp : "+nomChamp+" - "+(this.getField(nomChamp).page+1)+" - "+this.getField(nomChamp).type);

    if (nomChamp.indexOf("R.")==0) {
    if (this.getField(nomChamp).type=="text") this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;
    if ((this.getField(nomChamp).type=="checkbox" || this.getField(nomChamp).type=="radiobutton")) this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;
    }

    if (nomChamp.indexOf("Q.")==0) {
    if (this.getField(nomChamp).type=="text") {this.getField(nomChamp).value="";}
    if ((this.getField(nomChamp).type=="checkbox" || this.getField(nomChamp).type=="radiobutton")) this.getField(nomChamp).value="Off";
    if (this.getField(nomChamp).type=="combobox") {this.getField(nomChamp).value=this.getField(nomChamp).getItemAt(0,false);}
    }

    if (nomChamp.indexOf("Titre.")==0) {this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;}
    if (nomChamp.indexOf("TQ.")==0) {this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;}
    if (nomChamp.indexOf("Question.")==0) {this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;}
    if (nomChamp.indexOf("Aide." && this.getField(nomChamp).type=="text")==0) {this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;}

    if (nomChamp.indexOf("TL.")==0 && this.getField(nomChamp).type=="text") {this.getField(nomChamp).defaultValue="";}

    if (nomChamp.indexOf("Menu.")==0) {
    this.getField("Menu.3").fillColor=color.green;
    this.getField("Menu.4").fillColor=color.green;
    if (this.getField(nomChamp).type=="text") this.getField(nomChamp).defaultValue=this.getField(nomChamp).value;
    if ((this.getField(nomChamp).type=="checkbox" || this.getField(nomChamp).type=="radiobutton")) this.getField(nomChamp).value="Off";
    }

    }}

    Dans la 1ère condition (ligne 7 à 10) et pour la dernière (ligne 25 à 30) je ne sais pas comment écrire : si le champ est de type combobox alors la valeur par defaut sera la valeur sélectionnée dans la combobox.

    Pour le reste, je crois avoir compris ce qui pose problème, je pense que ça fonctionne. Le fichier est en pj

    @ Merlin :

    J’ai renomé la fonction random → hasard

    J’ai crée un formulaire avec uniquement ces 2 scripts pour que ce ne soit pas pollué par d’autres scripts de mon pdf qui en contient énormément et j’ai toujours le même problème :

    cela fonctionne quand j’appele la fonction via le script du bouton  démarrer

    mais ça ne fonctionne plus quand j’apelle la fonction par la commande aleatoir(); (bouton Aleatoir)

    Fichier (aleatoir) en piece jointe

     

    Attachments:
    You must be logged in to view attached files.
    en réponse à : Problème de lancement d’un script #75071
    michel c.
    Participant

    J’ai corrigé mon script Default mais ça ne fonctionne toujours pas.

    J’ai crée un un bouton qui appele simplement la fonction aleatoir et ça ne fonctionne pas non plus.

    Lorsque le code :

    for (var i=1; i<=30; i++) {
    try {
    random (i);
    } catch(e) {
    this.getField("Var."+i+".3").value="";
    }
    }

    est affecté au bouton, ça fonctionne (Bouton Demarrer) mais lorsque ce même code est en action de document, et que j’appele cette fonction ça ne marche plus (bouton aleatoir)

    Merci

    Attachments:
    You must be logged in to view attached files.
Affichage de 99 réponses de 1 à 99 (sur un total de 487)