1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Ajouter des options menu contextuel

Discussion dans 'Windev' créé par Mohamed, Mai 6, 2019.

  1. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour

    J'ai crée 20 modèles des états (factures) d'impression et je les ajoutés dans un menu contextuel, actuellement mon client réclame que le menu contextuel est devenu trop difficile pour choisir un modèle.
    Chaque client peut utiliser que 4 ou 6 modèles parmi les 20 modèles .
    Maintenant je veux ajouter les options (Etat Model1, etat model2,...) dans le menu contextuel en fonction de besoin de chaque client
    Est ce que vous avez une idée ?

    Merci d'avance
     
    Tags:
  2. suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    511
    J'aime reçus:
    740
    Bonjour @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Regarde là :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  3. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    J'ai déjà utilisé la fonction MenuAjouteOption() alors windev ne l'accepte pas et affiche un message de compilation "L'expression ne renvoie pas de résultat" parce que ma procédure que je veux associé attends 5 paramètres , hors dans la fonction MenuAjouteOption on ne peut ajouter qu'un seul paramètre.
    Comment faut il s'y prendre pour en passer plusieurs ?
     
  4. suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    511
    J'aime reçus:
    740
    Bonjour @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ,

    Tu peux contourner ceci en créant une procédure avec un seul paramètre.

    Code (Windev):
    PROCÉDURE Ma_Prodedure(NumOption est un entier)
    SELON NumOption
        CAS 1 : // Ma fonction 01
            Créer_Planning(P1,P2,....,Pn)
        CAS 2 : // Ma fonction 02
            Voir_planning(P1,P2,....,Pn)
        CAS 3 : // Ma fonction 03
            Ma_Fonction_03(P1,P2,....,Pn)
        AUTRE CAS
         
    FIN
    Maintenant tu peux l'utiliser comme ça:
    Code (Windev):
    // Ajoute un nouveau menu

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (MENU_MonMenu, "OPT_Planning", "Planning")

    // Ajoute une option dans le nouveau menu

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("OPT_Planning", "OPT_Créer", "Créer", Ma_Prodedure,1)

    // Associe une image à l'option de menu
    {"OPT_Créer", indChamp}..Image = "planning.png"
     
  5. khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    perso je gère mes menus contextuelle avec la propriété état ou visible de l'option.
    selon l''avancement du dossier les utilisateur ont des options grisé ou non visible. je change les etats lors du traitement clique droit du champ appelant le menu contextuelle.


    sinon menuajouteoption marche bien aussi pour créer dynamiquement un menu contxtuelle

    Code (Windev):

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (OPT_deplacement_vers_hors_rapport,"OPT_Chapitre"+j)=Faux ALORS
                       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (MENU_deplacement_vers_hors_raport.OPT_deplacement_vers_hors_rapport,"OPT_Chapitre"+j,BAO_chapitre[i]..Libellé,"deplacement_photos",i)
                    SINON
                        {"MENU_deplacement_vers_hors_raport.OPT_deplacement_vers_hors_rapport.OPT_Chapitre"+j}..Libellé=BAO_chapitre[i]..Libellé
                    FIN
     
     
  6. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci pour vos deux

    L'idée est devenu plus claire
     
  7. suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    511
    J'aime reçus:
    740
    Je suis d'accord avec @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    que le mieux serait de gérer les propriété Visible / Etat

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    perso je gère mes menus contextuelle avec la propriété état ou visible de l'option.
    Cliquez pour agrandir...
    Avec

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    tu auras des difficulté quand il s'agira de supprimer une Option du menu ou de ses sous menus

    Voilà ce que je fais :

    Code (Windev):
    PROCÉDURE Gestion_MC(_sScope est une chaîne)
    // On met toutes les options du menu contextuel en invisible
    MC_Panier.Opt_Imprimer..Visible=Faux
    MC_Panier.Opt_Retirer..Visible=Faux
    MC_Panier.Opt_Vider..Visible=Faux
    MC_Panier.Opt_Importer_Excel..Visible=Faux

    // Et selon le cas, on fait apparaitre les options requises
    SELON _sScope
        CAS "BTN_FromEXCEL" :
            Opt_Importer_Excel..Visible=Vrai
       
        CAS "TABLE_Panier" :
            SI TABLE_Panier.

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()>0 ALORS
                MC_Panier.Opt_Imprimer..Visible=Vrai
                MC_Panier.Opt_Retirer..Visible=Vrai
                MC_Panier.Opt_Vider..Visible=Vrai
            FIN
        AUTRE CAS
           
    FIN
    Utilisation
    Code (Windev):
    // Dans le traitement : Bouton droit enfoncé (WM_RBUTTONDOWN) de mon champ Table (Par exemple)
    // tu mets :
    Gestion_MC(MoiMême..Nom)
     
    khaliassas apprécie ceci.
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci pour le conseil je vais le prendre en considération
     
  • Partager cette page

    Chargement...