Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.1.0 - Français


block_parameter_error

Affiche une boîte d'erreur de saisie de paramètre pour un bloc Xcos.

Séquence d'appel

block_parameter_error(inform, expected)

Paramètres

inform:

une chaîne, le type d'erreur

expected:

une chaîne, la valeur ou la gamme de valeurs attendues

Description

Le but de cette fonction est de donner à l'utilisateur une information précise sur son erreur lorsqu'il entre un paramètre de bloc. L'information utilisateur est affichée sur deux lignes données respectivement par les paramètres :

  • inform: elle est réservée à l'information de l'utilisateur sur son erreur. La meilleure façon de le faire est de rappeler le nom du paramètre et la valeur erronée fournie par l'utilisateur.

  • expected: une information positive pour guider l'utilisateur en vue de la correction de l'erreur. Par exemple, si le paramètre est un entier, le message peut être "Doit être entier", pour une gamme de valeurs on peut utiliser un message comme celui-ci:

    msprintf(gettext("Must be in the interval %s."), "[3, 8]")

Exemples

L'exemple ci-dessous est une cas d'utilisation simple de la fonction. L'utilisateur entre une valeur dans la boîte de dialogue de paramètre. Si la valeur n'est pas valide, l'exemple affiche cette boîte d'erreur :

loadXcosLibs // Inutile dans un contexte de programmation de bloc Xcos

ok = %f;

while ~ok do
    // Entrée du paramètre
    [Datatype] = x_mdialog( ..
        "Entrée de paramètre", ..
        "Type de données (3:int32, 4:int16, 5:int8, ...) ?", ..
        "3" ..
    );

    if isempty(Datatype) then // Annuler ou OK ?
        break;

    else
        Datatype = evstr(Datatype);

    end
    // Tester le paramètre 'Data Type et afficher une boîte d'erreur si nécessaire
    if Datatype < 3 | Datatype > 8 then
        block_parameter_error( ..
            msprintf("Valeur erronée pour le paramètre ''Type de données'' : %d.", Datatype), ..
            msprintf("Doit être dans l''intervalle %s.", "[3, 8]") ..
        );
        ok = %f;

    else // Le paramètre est valide continuer le travail
        ok = %t;
        print(%io(2), "Le paramètre ''Type de données'' est valide");
    end
end

See also

Report an issue
<< Fonctions utilitaires Scilab Fonctions utilitaires Scilab buildouttb >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon May 22 12:39:48 CEST 2023