mozilla
Vos résultats de recherche

    nsIPromptService

     

    Cette page vient d'être traduite, mais elle a besoin d'un relecteur différent du traducteur. Pensez également à toujours vérifier le contenu avec sa toute dernière version en anglais.

     

    Résumé

    nsIPromptService peut être utilisée pour afficher de simples boîtes de dialogue. Ses méthodes devrait être utilisées de préférence à la place de window.alert(), window.confirm(), et des autres fonctions similaires du DOM.

    Il est possible de définir les touches de raccourcis pour les boutons en insérant une esperluette ("&") devant le caractère correspondant. Si vous souhaitez insérer cette esperluette directement dans le texte du bouton (c'est-à-dire dans la valeur de l'attribut label, sans utiliser de déclaration d'entité XML), utilisez-en deux ("&&").

    Certaines des méthodes de cette interface utilisent des paramètres en entrée/sortie. En C++, les paramètres en sortie sont représentés par des pointeurs de pointeurs (void**). En JavaScript, ce type de paramètre nécessite plus de travail car vous ne pouvez directement récupérer des paramètres en sortie. Vous devez les englober dans un objet. Cet objet peut être vide ou bien comporter un attribut value dont la valeur correspond au type du paramètre en sortie.
    Pour de plus amples informations sur les paramètres en sortie en JavaScript, voir Working with out parameters.

    Please add a summary to this article.
      Last changed in Gecko 1.7.5

    Hérite de : nsISupports

    Implémenté par : @mozilla.org/embedcomp/prompt-service;1. Pour créer une instance, faire comme suit :

    var prompts = Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
                  .getService(Components.interfaces.nsIPromptService);

    Aperçu des méthodes

    void alert(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText);
    void alertCheck(in nsIDOMWindow aParent, in wstring aDialogTitle,
                    in wstring aText, in wstring aCheckMsg, inout boolean aCheckState);
    boolean confirm(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText);
    boolean confirmCheck(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText,
                         in wstring aCheckMsg, inout boolean aCheckState);
    PRInt32 confirmEx(in nsIDOMWindow aParent,in wstring aDialogTitle,in wstring aText,
                      in unsigned long aButtonFlags,in wstring aButton0Title,
                      in wstring aButton1Title,in wstring aButton2Title,in wstring aCheckMsg,
                      inout boolean aCheckState);
    boolean prompt(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText,
                   inout wstring aValue, in wstring aCheckMsg, inout boolean aCheckState);
    boolean promptUsernameAndPassword(in nsIDOMWindow aParent, in wstring aDialogTitle,
                                      in wstring aText, inout wstring aUsername,
                                      inout wstring aPassword, in wstring aCheckMsg,
                                      inout boolean aCheckState);
    boolean promptPassword(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText,
                           inout wstring aPassword, in wstring aCheckMsg, inout boolean aCheckState);
    boolean select(in nsIDOMWindow aParent, in wstring aDialogTitle, in wstring aText,
                   in  PRUint32 aCount, [array, size_is(aCount)] in wstring aSelectList,
                   out long aOutSelection);

    Constantes

    Les drapeaux décris ci-dessous sont combinés pour formé le paramètre aButtonFlags passé à la méthode confirmEx(). Tous les drapeaux sont des constantes de type unsigned long et sont accessibles via Components.interfaces.nsIPromptService.flagname en JavaScript et nsIPromptService::flagname en C++.

    Drapeaux de position de bouton

    Constante Valeur Description
    BUTTON_POS_0 1  
    BUTTON_POS_1 256  
    BUTTON_POS_2 65536  

    Drapeaux de titre de bouton 

    Ces drapeaux sont utilisés conjointement avec les drapeaux de position pour modifier les textes des boutons de l'invite de commande.

    Constante Valeur Description
    BUTTON_TITLE_OK 1  
    BUTTON_TITLE_CANCEL 2  
    BUTTON_TITLE_YES 3  
    BUTTON_TITLE_NO 4  
    BUTTON_TITLE_SAVE 5  
    BUTTON_TITLE_DONT_SAVE 6  
    BUTTON_TITLE_REVERT 7  
    BUTTON_TITLE_IS_STRING 127  

    Drapeaux de bouton par défaut

    Ces drapeaux sont utilisés pour spécifier le bouton par défaut.

    Constante Valeur Description
    BUTTON_POS_0_DEFAULT 0  
    BUTTON_POS_1_DEFAULT 16777216  
    BUTTON_POS_2_DEFAULT 33554432  

    BUTTON_DELAY_ENABLE

    Le drapeau BUTTON_DELAY_ENABLE désactive les boutons. Ils sont activés après un certaine durée. Son interprétation peut varier, puisque son seul intérêt est de s'assurer que l'utilisateur ne ferme pas trop rapidement une boîte de dialogue renseignant sur des informations sensibles (avertissement concernant la sécurité etc.). À proprement parlé, il peut être ignoré.

    Un délai peut être utile non seulement pour donner plus de temps de réflexion à l'utilisateur avant d'agir, mais également comme mesure de sécurité contre les sites internet qui créent intentionnellement une situation de compétition. Par exemple, un invite de commande affichant un message d'avertissement concernant la sécurité est affiché de manière inattendue et le bouton de validation est actionné involontairement.

    Constante Valeur
    BUTTON_DELAY_ENABLE 67108864

    Situation de compétition dans un circuit logique. t1 and t2 représentent les délais de propagation des éléments logiques. Lorsque la valeur en entrée (A) est modifiée, le circuit produit en sortie in pic d'une durée t1.

    Drapeaux de boutons standards

    Constante Valeur Description
    STD_OK_CANCEL_BUTTONS 513

     boutons OK/Annuler.

    (BUTTON_TITLE_OK *BUTTON_POS_0) +(BUTTON_TITLE_CANCEL * BUTTON_POS_1)

    STD_YES_NO_BUTTONS 1027

     Boutons Oui/Non.

    (BUTTON_TITLE_YES *BUTTON_POS_0) +(BUTTON_TITLE_NO * BUTTON_POS_1)

    Méthodes

    alert()

    Affiche une boîte de dialogue avec un bouton de confirmation. Cette méthode est similaire window.alert(), excepté qu'elle permet de spécifier le titre de la boîte de dialogue. Vous devriez utiliser cette méthode à la place de window.alert.

    void alert(
      in nsIDOMWindow aParent,
      in wstring      aDialogTitle,
      in wstring      aText
    );

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue, ou null, dans le cas ou le parent est nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
                            .getService(Components.interfaces.nsIPromptService);
    
    prompts.alert(null, \"Title of this Dialog\", \"Hello! You have now been alerted.\");

    AlertExample.png

    alertCheck()

    Affiche une boîte de dialogue avec un bouton de confirmation et une case à coché accompagnée de son libellé.

    void alertCheck(
      in    nsIDOMWindow aParent,
      in    wstring      aDialogTitle,
      in    wstring      aText,
      in    wstring      aCheckMsg,
      inout boolean      aCheckState
    );

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aCheckMsg
    Le libellé de la case à cocher.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var check = {value: false}; // case à cocher décochée par défaut
    
    prompts.alertCheck(null, \"Title of this Dialog\", \"Hello! You have now been alerted.\",
    \"And this is a checkbox\", check);
    
    // check.value vaut true si la case est cochée, false sinon

    confirm()

    Affiche une boîte de dialogue avec un bouton OK et un bouton Annuler.

    boolean confirm(
      in nsIDOMWindow aParent,
      in wstring       aDialogTitle,
      in wstring       aText
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var result = prompts.confirm(null, \"Title of this Dialog\", \"Are you sure?\");
    
    // result vaut true si le bouton OK est actionné, false si c'est le bouton Annuler

    confirmCheck()

    Affiche une boîte de dialogue avec un bouton OK et un bouton Annuler ainsi qu'une case à coché accompagnée de son libellé.

    boolean confirmCheck(
      in nsIDOMWindow aParent,
      in wstring aDialogTitle,
      in wstring aText,
      in wstring aCheckMsg,
      inout boolean aCheckState
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aCheckMsg
    Le libellé de la case à cocher. Si null, la case à cocher ne sera pas affichée.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var check = {value: true}; // case à cocher cochée par défaut
    
    var result = prompts.confirmCheck(null, \"Title of this Dialog\", \"Are you sure?\",
    \"Don't ask again\", check);
    
    // check.value vaut true si la case à cocher est cochée ET que le bouton OK est actionné,
    // false si le bouton Annuler est actionné.

    confirmEx()

    Ouvre une boîte de dialogue comprenant 3 boutons et éventuellement une case à cocher accompagnée de son libellé.

    Les boutons sont numérotés de 0 à 2. L'application peut décider d'afficher ces boutons de gauche à droite  ou de droite à gauche. Le bouton 0 est activé par défaut à moins qu'un drapeau de bouton par défaut ne soit spécifié.

    Un bouton peut utiliser un libellé prédéfini, spécifié par l'un des drapeaux de libellé de bouton. Chaque libellé peut être multiplié par un drapeau de position de bouton pour assigner le libellé à un bouton particulier. Lorsque le drapeau BUTTON_TITLE_IS_STRING est utilisé pour un bouton, le paramètre de libellé de ce bouton est utilisé. Si la valeur de la position d'un bouton est à 0, le bouton ne sera pas affiché.

    L'exemple suivant créé une boîte de dialogue avec un bouton OK et un bouton avec un libellé personnalisé :

    aButtonFlags = (BUTTON_POS_0) * (BUTTON_TITLE_OK) +

                   (BUTTON_POS_1) * (BUTTON_TITLE_IS_STRING) +

                    BUTTON_POS_1_DEFAULT;

    confirmEx retourne toujours 1 lorsque l'utilisateur ferme la boîte de dialogue en utilisant le bouton de fermeture de la barre de titre ! bug 345067
    PRInt32 confirmEx(
      in nsIDOMWindow  aParent,
      in wstring aDialogTitle,
      in wstring aText,
      in unsigned long aButtonFlags,
      in wstring aButton0Title,
      in wstring aButton1Title,
      in wstring aButton2Title,
      in wstring aCheckMsg,
      inout boolean aCheckState
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aButtonFlags
    aButtonFlags est une combinaison de drapeaux de boutons.
    aButton0Title
    Libellé du bouton 0 si la valeur (BUTTON_TITLE_IS_STRING*BUTTON_TITLE_POS_0) est utilisé pour le paramètre aButtonFlags.
    aButton1Title
    Libellé du bouton 1 si la valeur (BUTTON_TITLE_IS_STRING*BUTTON_TITLE_POS_1) est utilisé pour le paramètre aButtonFlags.
    aButton2Title
    Libellé du bouton 2 si la valeur (BUTTON_TITLE_IS_STRING*BUTTON_TITLE_POS_2) est utilisé pour le paramètre aButtonFlags.
    aCheckMsg
    Le libellé de la case à cocher.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Valeur retournée

    L'index du bouton actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var check = {value: false}; // case à cocher décochée par défaut
    var flags = prompts.BUTTON_POS_0 * prompts.BUTTON_TITLE_SAVE +
    prompts.BUTTON_POS_1 * prompts.BUTTON_TITLE_IS_STRING +
    prompts.BUTTON_POS_2 * prompts.BUTTON_TITLE_CANCEL;
    // Ces drapeaux créent 3 boutons. Le premier est un bouton \"Save\", le
    // second la valeur de aButtonTitle1, et le troisième un bouton \"Cancel\"
    
    var button = prompts.confirmEx(null, \"Title of this Dialog\", \"What do you want to do?\",
    flags, \"\", \"Button 1\", \"\", null, check);
    
    // La case à cocher est cachée et button contient l'index du bouton acctionné,
    // 0, 1, ou 2.

    prompt()

    Ouvre une boîte de dialogue contenant un champ texte et éventuellement une case à cochée accompagnée de son libellé.

    boolean prompt(
      in nsIDOMWindow aParent,
      in wstring aDialogTitle,
      in wstring aText,
      inout wstring aValue,
      in wstring aCheckMsg,
      inout boolean aCheckState
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aValue
    Contient la valeur par défaut du champ texte lors de l'appel de la méthode (la valeur null peut être utilisée pour un champ vide). Lorsque la méthode retourne le résultat, si l'utilisateur a actionné le bouton OK, ce paramètre contient la nouvelle valeur. Sinon, la valeur n'est pas modifiée. Si vous appelez cette méthode en JavaScript, vous devez englober cet argument dans un objet dont l'attribut value est une chaîne de caractère (ou utiliser un objet vide).
    aCheckMsg
    Le libellé de la case à cocher. Si null, la case à cocher ne sera pas affichée.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var check = {value: false}; // case à cocher décochée par défaut
    var input = {value: \"Bob\"}; // valeur par défaut du champ texte à \"Bob\"
    var result = prompts.prompt(null, \"Title\", \"What is your name?\", input, null, check);
    
    // result vaut true si le bouton OK est actionné, false si c'est le bouton Cancel.
    // input.value content la valeur du champ texte si le bouton OKest actionné.

    promptUsernameAndPassword()

    Ouvre une boîte dialogue contenant un champ texte, un champ de mot de passe et éventuellement une case à cocher accompagnée de son libellé.

    boolean promptUsernameAndPassword(
      in nsIDOMWindow aParent,
      in wstring aDialogTitle,
      in wstring aText,
      inout wstring aUsername,
      inout wstring aPassword,
      in wstring aCheckMsg,
      inout boolean aCheckState
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aUsername
    Nom d'utilisateur par défaut (valeur nulle acceptée). Si l'utilisateur a fermé la fenêtre en actionnant le bouton OK, ce paramètre contient la nouvelle valeur saisie. Sinon, la valeur n'est pas modifiée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).
    aPassword
    Mot de passe par défaut (valeur nulle acceptée). Si l'utilisateur a fermé la fenêtre en actionnant le bouton OK, ce paramètre contient la nouvelle valeur saisie. Sinon, la valeur n'est pas modifiée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).
     
    aCheckMsg
    Le libellé de la case à cocher. Si null, la case à cocher ne sera pas affichée.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).
     

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var username = {value: \"user\"}; // nom d'utilisateur par défaut
    var password = {value: \"pass\"}; // mot de passe par défaut
    var check = {value: true}; // case à cocher cochée par défaut
    var result = prompts.promptUsernameAndPassword(null, \"Title\", \"Enter username and password:\",\nusername, password, \"Save\", check);
    
    // result vaut true si le bouton OK est actionné, false si c'est le bouton Cancel.
    // username.value, password.value, et check.value contiennent les nouvelles valeurs saisies si le bouton OK est actionné.

    promptPassword()

    Ouvre une boîte de dialogue contenant un champ mot de passe et éventuellement une case à cocher accompagnée de son libellé.

    boolean promptPassword(
      in nsIDOMWindow aParent,
      in wstring aDialogTitle,
      in wstring aText,
      inout wstring aPassword,
      in wstring aCheckMsg,
      inout boolean aCheckState
    );

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aPassword
    Mot de passe par défaut (valeur nulle acceptée). Si l'utilisateur a fermé la fenêtre en actionnant le bouton OK, ce paramètre contient la nouvelle valeur saisie. Sinon, la valeur n'est pas modifiée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).
    aCheckMsg
    Le libellé de la case à cocher. Si null, la case à cocher ne sera pas affichée.
    aCheckState
    Contient l'état initial de la case à cocher, puis son état final une fois la boîte de dialogue fermée. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple
    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    var password = {value: \"pass\"}; // mot de passe par défaut
    var check = {value: true}; // case à cocher cochée par défaut
    var result = prompts.promptPassword(null, \"Title\", \"Enter password:\", password, null, check);
    
    // result vaut true si le bouton OK est actionné, false si c'est le bouton Cancel.
    // password.value contient la nouvelle valeur saisie si le bouton OK est actionné. }} La case à cocher n'est pas affichée.

     

    select()

    Ouvre une boîte de dialogue contenant une liste de chaîne de caractères. L'utilisateur ne peut en sélectionner qu'une seule.

    boolean select(
      in  nsIDOMWindow aParent,
      in  wstring       aDialogTitle,
      in  wstring       aText,
      in  PRUint32     aCount,
      [array, size_is(aCount)] in wstring aSelectList,
      out long         aOutSelection
    );
    

    Paramètres

    aParent
    La fenêtre parente de la boîte de dialogue. Si null, la fenêtre parente sera nsIWindowWatcher.activeWindow.
    aDialogTitle
    Le titre de la boîte de dialogue.
    aText
    Le texte de la boîte de dialogue.
    aCount
    Taille du tableau aSelectList.
    aSelectList
    Liste de chaînes de caractères.
    aOutSelection
    Contient l'index de l'élément sélectionné dans la liste lorsque le bouton OK est actionné. Si vous utilisez cette méthode en Javascript, vous devez englober cet argument dans un objet dont la propriété value est un booléen spécifiant l'état initial (ou utiliser un objet vide).

    Valeur retournée

    true si le bouton OK est actionné, false si le bouton Annuler est actionné.

    Exemple

    var prompts = Components.classes[\"@mozilla.org/embedcomp/prompt-service;1\"]
    .getService(Components.interfaces.nsIPromptService);
    
    var items = [\"Hello\", \"Welcome\", \"Howdy\", \"Hi\", \":)\"]; // liste d'éléments
    
    var selected = {};
    
    var result = prompts.select(null, \"Title\", \"What greeting do you want?\", items.length, items, selected);
    
    // result vaut true si le bouton OK est actionné, false si c'est le bouton Cancel.
    // selected contient l'index de l'élément sélectionné. Accédez à cet élément avec selected items[selected.value].

    selectExample.png

    Voir également

     

    Étiquettes et contributeurs liés au document

    Étiquettes : 
    Contributors to this page: BenoitL, Fredchat, damien.flament, fscholz
    Dernière mise à jour par : fscholz,