Domanda

Voglio creare un elenco con Flash CS3 utilizzando il componente fisarmonica (l'utente fa clic su una riga e la riga si espande). L'icona dell'intestazione è un movieClip "my_icon":

var oAccordion_1:Object = oAccordion.createChild("Datasheet", "Icon", {icon:"My_icon"});

MovieClip "My_icon" contiene un campo di testo dinamico con il nome di istanza "LBLHEAD". No, voglio cambiare il testo del campo di testo in questo modo:

oAccordion_1.icon.lblHead.text = "mytext";

Ma Trace (oaccordion_1.icon.lblhead) dà non definito. Tuttavia Trace (oaccordion_1.icon) mi dà "my_icon".

Qualche idea su come posso accedere a LBLhead all'interno dell'intestazione MC?

Grazie.

Btw. So che la fisarmonica ha un'etichetta stessa, ma voglio avere più di un'etichetta all'interno della mia testata.

È stato utile?

Soluzione

Sfortunatamente, non esiste un modo pulito e semplice per modificare dinamicamente le interiora di icona. Un'intestazione della fisarmonica è solo un'istanza del pulsante e la logica dell'icona del pulsante è complessa e intrecciata con il supporto skinning. In particolare, il pulsante crea molte copie dell'icona per i diversi stati del pulsante.

lblHead.text = _parent.content_mc.lblHeadText;

Quindi aggiungi quel parametro alla tua chiamata createchild:

var oAccordion_1:Object = oAccordion.createChild("Datasheet", "Icon", {icon:"My_icon", lblHeadText:"Blah blah"});

Spero che sia di aiuto!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top