2008-11-02 2 views
1

Je veux créer une liste déroulante en flex qui prendra trois valeurs, disponible, non disponible, et occupé. La contrainte est, je ne devrais pas permettre à l'utilisateur d'aller directement de Non disponible à Occupé. Donc, quand un utilisateur est sélectionné indisponible, je devrais désactiver l'élément Occupé (non sélectionnable), mais un utilisateur pourra passer directement de Disponible à Occupé. Je ne trouverais pas un moyen simple de désactiver un élément dans la zone de liste déroulante dans Flex. Comment puis je faire ça?Comment puis-je désactiver un élément individuel dans une zone de liste déroulante dans Flex afin qu'il ne soit pas cliquable?

Répondre

1

Avez-vous envisagé d'utiliser des boutons radio plutôt qu'une zone de liste déroulante? Il est clair comment faire cela pour les boutons radio, pour une chose. En outre, il peut souvent être plus convivial de présenter les options disponibles sans avoir besoin d'un clic pour les révéler. (Surtout si, comme dans ce cas, vous ajoutez la possibilité qu'une option est "disponible, mais pas possible pour vous maintenant pour une raison qui ne figure pas dans cet élément de la liste déroulante").

Si vous voulez vraiment une combo-box, vous pouvez utiliser l'événement click pour l'afficher de manière non standard en changeant probablement son style; Ensuite, si on clique de toute façon, Alors, dans l'événement sélectionné, rejeter le choix (avec une indication de pourquoi),

Ou, si vous voulez simplement le retirer de la liste, vous pouvez avoir l'événement click listener repeupler la liste des sources à chaque fois, en fonction des conditions. Mais cela pourrait aussi être source de confusion pour l'utilisateur.

+0

Merci, votre suggestion a vraiment aidé. – Mozammel

+0

Je vais avec l'implémentation du bouton radio. – Mozammel

1

Vous pouvez également jeter un oeil à

www.stoimen.com/blog/2009/03/05/flex-3-combobox-disabled-options/

qui fait référence

wmcai.blog.163.com/blog/static/4802420088945053961/

(Note pour les utilisateurs NoScript vous devez avoir 163.com et 126.com au moins temporairement permis être capable de voir correctement cette page)

ça marche s très bien même si j'ajouté le code pour pouvoir traiter correctement le clavier événements dans la liste déroulante

auto Entière Exemple de travail disponible sur

http://olivierbourdon.homedns.org/OpenSource/combos.zip

Merci encore pour le bon travail

Questions connexes