Donnez vie à vos documents numériques !
 

Ne pas afficher le petit "+" lorsque le champ est trop petit

abracadabraPDF Forums PDF – Général Ne pas afficher le petit "+" lorsque le champ est trop petit

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #44971
    bendegards
    Participant

    Bonjour à vous !!!

    J’aimerais savoir s’il y a un moyen de ne pas imprimer le petit plus dans un chams qui est trop petit pour le nombre de caractères qu’il contient. Je m’explique. A partir d’un exemple trouvé sur le forum, j’ai modifié le script afin de l’insérer dans mon formulaire. Cependant, je dois rapetissé le champs afin de ne voir que la première lettre du choix dans un menu. Apparait alors un petit “+” en bas à droite et ce dernier s’imprime. J’aimerais qu’il ne s’imprime pas, qu’on le voit à l’écran c’est correct mais pas à l’impression. Je joins mon exemple modifié.

Affichage de 14 réponses de 1 à 14 (sur un total de 14)
  • Auteur
    Réponses
  • #57735
    Merlin
    Maître des clés

    Non, hélas.

    [En fait si, on peut. Voir ma réponse avec capture d’écran ci-dessous.]

    #57736
    bendegards
    Participant

    Dans ce cas, est-il possible de faire comme un menu déroulant avec une valeur d’exportation lorsque l’on choisi un choix dans le menu.  Si je choisi le premier choix, la lettre correspondante pourrait s’inscrire dans mon champs sans tout la définition qu’y est rattaché.

    #57737
    bendegards
    Participant

    J’ai trouvé ce script qui me permet d’afficher une valeur spécifique pour chaque choix dans mon popmenu mais il doit y avoir une erreur car ça fonctionne pas du tout. Ce ne sont pas la bonne valeur qui s’affiche dans mon champs “raison dossier” pour quoi donc !!!
    Pouvez vous m’éclairer un peu ???

    Voici mon script :
    var w=this.getField(“raison dossier”);
    var menu31 =
    app.popUpMenu(‘M Demande d’un pays étranger’,’A Demande d un SPM’,’K Demande de l ASFC’,’J Demande de la SAAQ’,’C Enquête pour autre motif que l infraction concernée’,’B Interception sur la route’,’L Lecteur de plaque’,’I Plainte d alarme’,’F Plainte d un autre transporteur’,’D Plainte de bruit’,’E Plainte du public’,’G Plainte organisme gouvernemental’,’H Vérification de compagnie’,’Z Autre’);
    if (menu31!=null)
    {
    if(menu31!=”M Demande d’un pays étranger”){w.value=”M”}
    else
    if(menu31!=”A Demande d un SPM”){w.value=”A”}
    else
    if(menu31!=”K Demande de l ASFC”){w.value=”K”}
    else
    if(menu31!=”J Demande de la SAAQ”){w.value=”J”}
    else
    if(menu31!=”C Enquête pour autre motif que l infraction concernée”){w.value=”C”}
    else
    if(menu31!=”B Interception sur la route”){w.value=”B”}
    else
    if(menu31!=”L Lecteur de plaque”){w.value=”L”}
    else
    if(menu31!=”I Plainte d alarme”){w.value=”I”}
    else
    if(menu31!=”F Plainte d un autre transporteur”){w.value=”F”}
    else
    if(menu31!=”D Plainte de bruit”){w.value=”D”}
    else
    if(menu31!=”E Plainte du public”){w.value=”E”}
    else
    if(menu31!=”G Plainte organisme gouvernemental”){w.value=”G”}
    else
    if(menu31!=”H Vérification de compagnie”){w.value=”H”}
    else
    if(menu31!=”Z Autre”){w.value=”Z”}
    else {w.value=” “;}
    }

    #57738
    Merlin
    Maître des clés

    C’est une bonne idée, mais j’ai l’impression que tu es victime d’un “bug de copier-coller”.  :geek:

    if(menu31!= signifie “si menu31 n’est pas égal à…”

    Et ce que tu veux c’est : if(menu31== qui signifie “si menu31 est égal à…”

    :Smiley15:

    #57739
    rattlesnake
    Membre

    Hey bendegard,

    Quand tu as beaucoup de conditions, tu peux passer par un Switch au lieu des if/else. C’est plus rapide est plus simple :

    switch (menu31)
    {
    case “M Demande d’un pays étranger”:
      w.value=”M”
    break;

    case “A Demande d un SPM”:
      w.value=”A”
    break;

      //etc
    }

    Bonne chance dans ton code ;-)

    #57740
    Merlin
    Maître des clés

    Quand tu as beaucoup de conditions, tu peux passer par un Switch

    [mode je viens de prendre un coup sur la tête]
    Euuhhh… C’est documenté où ce genre de chose très intéressante ?
    [/mode je viens de prendre un coup sur la tête]

    :geek:

    #57741
    brumbies
    Membre

    Javascript peut être intègre aussi bien dans un pdf que dans une page web. Ensuite il faut un utilitaire pour l’interpréter, soit un navigateur pour une page web, soit Acrobat (par exemple) pour un pdf.

    Cependant que ce soit dans l’un ou l’autre cas il s’agit du “même langage” (même s’il y a des fonctions spécifiques a l’un et l’autre – d’où le fait qu’Adobe ait mis a dispo des utilisateurs la Bible :Javascript for Acrobat API Référence)

    Quelque soit le support utilise, les opérateurs, la définition des variables, les structures de contrôles, etc… Sont identiques.
    Exemple : Math.PI qui renvoi un arrondi du nombre PI (ok il faut le pouvoir le placer…)
    Donc pour créer un script “optimum”, il faut combiner les données présentes dans la Bible citée plus haut avec les données des différents tutoriels présents sur le web sur l’initiation a javascript comme le site ci-dessous par exemple :https://developer.mozilla.org/fr/docs/Web/JavaScript/Une_réintroduction_à_JavaScript

    Dans le cas présent, switch est utile car on est sur des itérations simples avec une condition unique sur menu31
    On aurait aussi pu prendre le script de bendegards et l’alléger en retirant les else puisque l’on est sur un nombre limite de possibilité via le menu (par contre si la saisie était libre via un champs texte par exemple alors les else se justifiait)
    Une autre possibilité aurait été de préférer une liste box a un menu et d’affecter la valeur d’exportation de la liste box au champs “raison dossier”

    Tous les chemins mènent a Rome !  :Smiley01:

    #57742
    alex
    Participant

    Bonjour à tous.
    Pour répondre à la question du “+”, je vous propose de ne retenir pour l’affichage que le premier caractère de l’item du menu déroulant comme indiqué ci-dessous.
    Par ailleurs, pour que la valeur s’affiche je vous propose de “forcer” le déplacement du curseur sur la saisie suivante de votre formulaire ce qui a pour effet de mettre à jour le champ “Text2”
    Voir document de démonstration joint.
    Script:
    var menu31 =
    app.popUpMenu(‘……….’);
    this.event.target.value = menu31.substring(0,1);
    this.getField(“Saisie suivante”).setFocus();

    #57743
    Merlin
    Maître des clés

    Trop fort Alex !
    :bravo:  :extra:

    #57744
    bendegards
    Participant

    WOW Alex !!!!

    JE ne peux demander mieux !!!!! Merci beaucoup

    En passant lors de la commande app.popUpMenu, peut-on faire deux colonne ?

    Merci !!!

    #57745
    rattlesnake
    Membre

    [mode je viens de prendre un coup sur la tête]
    Euuhhh… C’est documenté où ce genre de chose très intéressante ?
    [/mode je viens de prendre un coup sur la tête]

    :geek:

    Haha wouaw c’est un honneur d’avoir pu apprendre un petit quelque chose à un des rois du PDF ;-)

    #57746
    alex
    Participant

    Je vous conseille ça, c’est dédié au Web mais tout ce dont on a besoin en dehors de l’environnement pdf y est (fonction mathématiques, traitement des chaînes de caractères, tables, dates, etc…) :
    JavaScript: The Definitive Guide, 6th Edition
    Activate Your Web Pages
    By David Flanagan
    Publisher: O’Reilly Media

    Sinon on trouve tout sur le Web, il suffit de demander.
    Site conseillé: developpez.com

    Bonne journée à tous.

    #57747
    alex
    Participant

    En ce qui concerne l’affichage de deux colonnes, je ne vois pas de solution, sauf à séparer le premier caractère du reste par un caractère genre tiret (Exemple: “M-Demande de…”). Dans ce cas le script est inchangé.
    A moins que je n’aie pas compris la question…
    A.

    #57748
    Merlin
    Maître des clés

    C’est le sujet des coups sur la tête…
    Je viens de m’apercevoir, en faisant autre chose, que pour masquer le + ça passe par les Préférences : Formulaire d’Acrobat ou de Reader, où il faut décocher l’option “Afficher l’indicateur de dépassement des champs de texte” !

    :oh:  :geek:

Affichage de 14 réponses de 1 à 14 (sur un total de 14)
  • Vous devez être connecté pour répondre à ce sujet.