|
[WD25] Liste des menus contextuels et de leurs boutons parents |
Started by EP, May, 03 2021 11:40 AM - 6 replies |
| |
| | | |
|
| |
Registered member 4 messages |
|
Posted on May, 03 2021 - 11:40 AM |
Bonjour,
je n'arrive pas a retrouver cette information, donc si quelqu'un a une solution je suis preneur.
Nous avons un ruban, avec des boutons associés. Sur certains de ces bouton, nous avons affecté un menu contextuel via l'UI, avec un bouton flèche (Action dérouler le menu).
Je voudrais lister la totalité des boutons du ruban, et savoir sur chaque bouton quel est le menu contextuel qui y est associé, mon but étant de générer par procédure un menu automatiquement.
Donc le listage des boutons -> Pas de soucis avec EnumèreChamp Le listage des menus contextuels de la fenêtre -> Pas de soucis avec EnumèreSousElément
Par contre, je n'ai aucun moyen de lier les uns aux autres a savoir quel menu est affecté a quel bouton.
J'ai déjà tenté au moment du listage des boutons, d'utiliser la propriété ..MenuContextuel, Malheureusement, elle me renvoie vide quand un menu est affecté au bouton (ca aurait été plus utile qu'elle me retourne le nom du menu), et elle me renvoie <NOCONTEXTMENU> quand il n'y a aucun menu contextuel associé au bouton.
De même, je n'ai pas moyen au moment du listage des menus de pouvoir retrouver le bouton auquel le menu est affecté.
J'ai aussi tenter de combiner les 2 listes pour utiliser un champexiste() dessus, mais aucun résultat.
Si quelqu'un a une piste (ou même une solution) je suis preneur.
Merci. |
| |
| |
| | | |
|
| | |
| |
Registered member 3,845 messages Popularité : +227 (347 votes) |
|
Posted on May, 03 2021 - 3:43 PM |
Bonjour, Je viens de tester, BTN_XXX..MenuContextuel renvoie bien le nom du menu associé. Si la valeur renvoyée est "" c'est qu'il n'y a aucun menu associé. A priori tu dois avoir un problème avec ton indirection
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Registered member 4 messages |
|
Posted on May, 03 2021 - 4:04 PM |
Merci pour ton retour.
Ecoute mon indirection à l'air ok pourtant. Je récupère bien le nom, le type, le nomcomplet, le libellé etc... mais pas le MenuContextuel. Je vais revérifier. |
| |
| |
| | | |
|
| | |
| |
Registered member 3,845 messages Popularité : +227 (347 votes) |
|
Posted on May, 03 2021 - 4:32 PM |
Ce bout de code affiche le nom du bouton et le menu contextuel associé (aucun sinon) :
sParent est une chaîne sNomChamp est une chaîne sNomComplet est chaîne nTypeChamp est un entier sMenuCtx est chaîne
sParent="FEN_Test.RUBAN_TEST" sNomChamp=EnumèreSousElément(sParent, enumPremier)
TANTQUE sNomChamp <> "" // Nom complet du champ sNomComplet =sParent + "." + sNomChamp // Récupération du type de l'élément nTypeChamp={sNomComplet,indChamp}..Type SI nTypeChamp=typBouton ALORS sMenuCtx={sNomComplet,indChamp}..MenuContextuel SI sMenuCtx="" ALORS sMenuCtx="Aucun" FIN TraceConstruit("Menu contextuel de %1 :%2",sNomChamp,sMenuCtx) FIN // Champ suivant sNomChamp = EnumèreSousElément(sParent) FIN
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Registered member 4 messages |
|
Posted on May, 03 2021 - 4:45 PM |
Je confirme mes dires, même si je fais un trace de MonBouton..MenuContextuel, il me retourne vide. Donc ce n'est pas un souci d'indirection.
La question reste donc ouverte.
@Voroltinquo : Comment as-tu paramétré ton bouton ? As-tu fais comme j'ai expliqué plus haut ? Ci dessous dans la capture, en jaune, le seul endroit ou se trouve mon menu contextuel.
|
| |
| |
| | | |
|
| | |
| |
Registered member 4 messages |
|
Posted on May, 03 2021 - 4:49 PM |
Je n'ai que Aucun ou No Context Menu avec ta procédure. J'ai donc bel et bien un souci. |
| |
| |
| | | |
|
| | |
| |
Registered member 3,845 messages Popularité : +227 (347 votes) |
|
Posted on May, 03 2021 - 10:23 PM |
erf En effet, j'ai merdu. J'avais testé avec l'option "menu contextuel"
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | | | |
| | |
|