PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Menu personnalisé
Menu personnalisé
Débuté par Fournier, 07 déc. 2018 16:42 - 4 réponses
Posté le 07 décembre 2018 - 16:42
Bonjour à tous

J'ai un petit problème que je ne vois pas comment résoudre.
Dans un projet des utilisateurs se connectent
ils peuvent avoir une ou plusieurs options du menu logiciel
Pas de problème avec le menu de la fenêtre.
par contre j'aimerais installer une page qui serait appelée par le choix "accueil du menu" dans laquelle il n'y aurait uniquement que les boutons correspondant à leurs options autorisées.
Et bien sur que la présentation des boutons soit harmonieuse

Avez-vous en idée ?

Merci d'avance

Pascal Fournier
Posté le 07 décembre 2018 - 20:34
Bonjour
Si j'ai bien compris, c'est que les boutons de ta page fonctionnent (Ouvre les mêmes fenêtrés) que les options du menu de ton logiciel.
Si c'est le cas je vous partage la méthode que j'utilise pour les bouton raccourcies que je place sur la barre d'outils de ma fenêtre mère du logiciel:
1. Comme les noms des option des menu commence par OPT_NomDuMenu1, OPT_NomDuMenu2,etc..... Renomer les
boutons te ta page par BTN_NomDuMenu1, BTN_NomDuMenu2, etc...
2. De la meme maniere dont tu controle les accees aux options du menu principales, tu pourra le faire pour les boutons de ta
page en remplacant seulement OPt_ par BTN_
Ex: {Replace(Nom_OptionAControler,"OPT_","BTN_"),IndChamp"}..Visible=False
Membre enregistré
37 messages
Posté le 08 décembre 2018 - 12:08
Bonjour et merci
En fait je lisais bien le menu de ma fenetre principale et je savais rendre un bouton invisible mais si l'utilisateur avais droit au menu 1 et 3 celà faisait un trou.
Voici donc ce que j'ai fait
Dans la fenêtre que j'ouvre les boutons sont tous de même largeur, ont le même espacement et je connais la position x du 1er
J'ai donc créé une variable de type entier avec la position x du premier
je lis le menu de la fenêtre principale et si l'option est a vrai le bouton est visible et à la position de la variable
Ensuite j'ajoute à la variable la largeur de mon bouton augmenté de l'espacement.
Si dans la fenètre principale l'option suivante du menu est égale à non le bouton suivant est invisible et je ne change pas la variable
Puis si dans la fenetre principale l'option 3 est à vrai le bouton correspondant devient visible et je le déplace selon la variable
Et ainsi de suite...

Cordialement

Pascal Fournier
Membre enregistré
81 messages
Popularité : +2 (4 votes)
Posté le 10 décembre 2018 - 11:01
bonjour.

le plus simple aurais été de placer ces boutons dans une zone répétée.

une zonerepetee avec un bouton

à chaque option valide pour l'utilisateur : zonerepetee ajoute, avec l'image qui va bien et le nom de l'option .

sur le clic : execute du code du nom de l'option.


je dis ça parce que c'est comme ça qu'on a fait chez nous ;-)

sinon tu as la possibilité des laisser tous les boutons et de griser ceux qui ne sont pas accessibles, ainsi l'interface reste harmonieuse.

cordialement
Membre enregistré
37 messages
Posté le 10 décembre 2018 - 15:25
Bonjour

J'ai essayé avec une zone répétée
c'est quand même pas si simple que ca (a cause de l'image qui va bien)
Griser les boutons j'ai essayé aussi. Mais ca ne me plaisait pas car l'utilisateur voit qu'il y a une option mais il est frustré car il n'y a pas accès

Finalement j'ai opté pour la solution citée plus haut
je trouve que c'est mieux

Cordialement

P.Fournier