Donnez vie à vos documents numériques !
 

alex

Toutes mes réponses sur les forums

Affichage de 9 réponses de 595 à 603 (sur un total de 603)
  • Auteur
    Réponses
  • en réponse à : menu pop-up #49703
    alex
    Participant

    La solution à votre problème n’est pas simple car il faut parcourir l’arborescence des signets que l’on ne connait pas à priori, voilà donc le code à tester et vérifier …
    var cDest = app.popUpMenu( “section 1″,”section 2”, [“section 3”, “section 3-1”, “section 3-2”, “section 3-3”], [“section 4″,”section 4-1″,”section 4-2″,”section 4-3″,”section 4-4″,”section 4-5″,”section 4-6”],[“section 5”, “section 5-1”, “section 5-2”, “section 5-3”, “section 5-4”],[“section 6”, “section 6-1”, “section 6-2”, “section 6-3”, “section 6-4”], “section 7”, “section 8”  );
    //this.gotoNamedDest(cDest);
    //fonction de recherche des signets
    function searchBookmarks(bkm, nLevel, bkmName)
    {
    //recherche de premier niveau
    if ( bkm.name == bkmName ) return bkm;
    //recherche aux niveaux secondaires par imbrication
    if (bkm.children != null)
    {
    for ( i = 0; i < bkm.children.length; i++)
    {
    bkMark = searchBookmarks(
    bkm.children, nLevel + 1, bkmName);
    if ( bkMark != null ) break;
    }
    return bkMark;
    }
    return null;
    }

    //programme principal…
    if ( cDest != null )
    {
    bkm = searchBookmarks(this.bookmarkRoot, 0, cDest );
    if ( bkm != null ) bkm.execute();
    else app.alert(“Signet introuvable”,1);
    }

    //Je n’ai pas eu de difficulté car ce code est assez bien documenté.

    en réponse à : formulaire avec bouton radio et envoi par messagerie #49661
    alex
    Participant

    Je te l’envoies Merlin pour que tu la “pédagogise”.

    en réponse à : formulaire avec bouton radio et envoi par messagerie #49659
    alex
    Participant

    Capter l’indice du menu déroulant en placçant le script suivant dans les actions de script personnalisée liées au format du menu déroulant . La valeur est stockée dans le champ invisible nommé “ChampInvisible”.
    this.getField(“ChampInvisible”).value=event.target.currentValueIndices;

    Lors de l’ouverture du document avec les données (qui comprennent la valeur du champ invisible), lancer le script d’ouverture de page suivant qui a pour effet de resélectionner l’item correspondant à la valeur stockée:

    position=this.getField(“ChampInvisible”).value;
    app.alert(“Nous allons placer le menu déroulant sur l’item “+position,3)
    this.getField(“MenuDeroulant”).currentValueIndices=position;

    Maquette pour ceux qui me la demandent gentiment…. :idee:
    Bonsoir

    alex
    Participant

    Je pense qu’il faut autoriser la manipulation (l’ouverture) du fichier cible par le script du fichier père. Pour cela on aura  recours à la propriété disclosed du document cible. Cela évite de passer un script de haut niveau.

    en réponse à : formulaire avec bouton radio et envoi par messagerie #49658
    alex
    Participant

    Essayez ceci:
    Créer un champ caché recevant par script la valeur du rang de l’item à sélectionner.
    Lors de l’ouverture du document un script positionnera le menu déroulant en fonction de la valeur de ce champ…

    en réponse à : condition dans un champ de formulaire #49662
    alex
    Participant

    La syntaxe est la suivante :
    if(this.getField(“Champ1”).value==1)
    {
    //condition satisfaite.
    this.getField(“Champ2”)hidden=true;
    }
    else
    {
    //condition non satisfaite..
    this.getField(“Champ2”)hidden=false;
    }
    //Je vous laisse écrire la suite pour la seconde condition…

    en réponse à : Vue précédente et vue suivante #49532
    alex
    Participant

    Je viens de tester les deux fonctions sous Acrobat Reader 8 :
    Sous Acrobat 7 ou 8, créer deux fichiers pdf, pour aller vite:
    Options avancées>JavaScript>Déboguer>
    Dans la console saisir app.newDoc(); puis Enter avec la touche Enter du pavé numérique.
    Créer deux boutons:
    Le bouton P (précédant) et lui associer le script app.goBack();
    Le bouton S (suivant) et lui associer le script app.goForward();
    Enregistrer ce document sous différents noms.

    Sous Acrobat Reader 8 cette fois, ouvrir ces documents les uns derrière les autres. Tester les boutons P puis S !
    Le miracle se produit (en fait ça marche comme prévu, le bug des premières versions du reader 8 est corrigé).

    en réponse à : Vue précédente et vue suivante #49520
    alex
    Participant

    Votre script est bon. Essayez le sous Acrobat Reader 7 pour vous en convaincre !
    C’est app.goBack() qui est en cause.

    alex
    Participant

    Bonjour à tous. Je fais un petit retour au JavaScript. A ma connaissance, il n’est pas possible de capter ces évènements avec JavaScript mais je peux me tromper. Par contre on peut inhiber l’apparition des menus et donc inciter l’utilisateur à cliquer sur les boutons. Placer le script en ouverture de page soit par batch soit par programme JavaScript.

Affichage de 9 réponses de 595 à 603 (sur un total de 603)