Forums Développement Multimédia

Aller au contenu

Récupérer valeur liste déroulante

Director

2 réponses à ce sujet

#1 dga

    Ceinture Blanche

  • Members
  • Pip
  • 5 messages

Posté 13 July 2010 - 19:41 PM

Bonjour,

J'utilise une LISTE DÉROULANTE de la bibliotheque des comportements. Le comportement à été déposé sur le champ contenant le texte(items) de la liste. L'identifiant choisi est < pour la valeur choisie. Il y a plusieurs listes sur la page

SVP aide, je désire récupérer la valeur choisie dans les listes.

1-. Dois-je assigner une variable globale dans script pour que cette variable devienne la liste désignée.
2-. Comme il y a plsieurs listes, quel call, appel, dois-je faire ?

Actuellement, les entrées du champ texte proviennent d'une variable(liste linéaire), dont chacune des entrées est positionnées dans la liste.
J'obtiens les entrées dans la liste sans problème. MAIS, comment RÉCUPÉRER ces valeurs.

Un petit tuto sur ce sujet aiderait-beaucoup...mais comme tout est sur une base volantyaire...le premier mot est toujours "MERCI!"

#2 glurp

    Modérateur

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1260 messages

Posté 14 July 2010 - 10:57 AM

Salut dga,

Je ne suis pas un spécialiste des composant Flash, mais voici ce que j'ai trouvé :

- L'acteur composant Flash list contient une liste de données appelée "data"
- L'acteur composant Flash list contient une liste de labels appelée "labels"
- La (les) valeur(s) de la (des) ligne(s) sélectionnée(s) est récupérable via la propriété du sprite selectedItems

Cependant, selectedItems renvoit une erreur si aucune ligne n'est sélectionnée !
Il est donc indispensable de se programmer un petit gestionnaire.

Un code trouvé sur internet ( http://www.directorf...685&postcount=3 ) :


-- Behavior script attached to a list instance on the stage

property pSprite

on beginSprite(me)
pSprite = sprite(me.spriteNum)
-- Set the list component event "change" for Director response
pSpriteEvent = pSprite.newObject("Object")
pSprite.setCallback(pSpriteEvent, "change", 0, 0)
end

on change(me)
put pSprite.selectedItems -- put the item selected with the mouse on the
message window
end

on getSelectedItemsList(me)
if pSprite["selectedItems"] = VOID then -- this line of code returns VOID
if no items selected
return [] -- if no items selected returns an empty lingo list
else
return pSprite.selectedItems -- or return a lingo linear list of strings
end if
end

-- End behavior script
 


#3 glurp

    Modérateur

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1260 messages

Posté 14 July 2010 - 12:40 PM

Et pour préciser l'accès aux valeurs, non, tu n'as pas forcément besoin d'utiliser des variables globales puisqu'elles sont attachées au member.

Tu peux donc y accéder via :
- member("nom").data
- sprite(index).member.data

Ainsi, si je veux récupérer la (les) valeur(s) sélectionnées de la liste positionnée sur le sprite 1, j'écris ;

tDataList = sprite(1).member.data
tSelected = sprite(1).selectedItems

repeat with i = 1 to tSelected.count
   put tDataList[tSelected[i]]
end repeat
 




1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP