2010-06-19 9 views
1

J'ai créé un bouton dans MXMXL. En cliquant sur le bouton, je crée un menu en tant qu'enfant du bouton. J'utilise une source de données XML. La raison de la création de cette façon, était due à la quantité de skinning personnalisé impliqué. Un popupmenubutton n'était pas une option. Quoi qu'il en soit, ma question est la suivante: en cliquant sur le bouton, le menu est affiché. Cependant, si vous cliquez à nouveau sur le bouton, le menu réapparaît. Je veux que le menu se ferme si l'utilisateur clique sur le bouton une seconde fois. Maintenant, je l'ai eu à travailler en définissant un var après l'ouverture du menu, puis je vérifie cette var sur chaque clic pour s'assurer que le menu n'est pas déjà ouvert. Si vrai, alors il fermera le menu, au lieu de le rouvrir. Cela fonctionne, jusqu'à ce que l'utilisateur clique, dans lequel l'événement HIDE est distribué et le menu se ferme. Mon hack ne fonctionne plus.Flex - Menu créé sur le bouton Cliquez sur

Des suggestions? J'ai passé des heures à essayer différentes choses. La partie la plus difficile consiste à essayer de se départir de ce deuxième clic lorsque le menu est ouvert, et lorsque l'utilisateur clique loin du menu. Ils envoient tous deux l'événement HIDE.

Aidez-moi !!!

Répondre

2

Avez-vous essayé d'ajouter un autre eventlistener au bouton ... FlexMouseEvent.MOUSE_DOWN_OUTSIDE? Vous devriez alors pouvoir définir l'événement preventDefault sur true pour empêcher l'événement de déclencher autre chose et d'arrêter la fermeture du menu.

+0

J'ai essayé cela. Rien ne se passe parce que le event.cancelable est faux. D'autres pensées? – Dana

+0

Voici comment je l'ai réparé: http://stackoverflow.com/questions/3077980/flex-menu-control-click-a-bouton-et-un-menu-is-displayed-how-can-i- cliquez-ça – Dana

Questions connexes