Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    165

    [AS3] problema con stile ComboBox

    Salve ho un problema, ho tre ComboBox e il valore del primo (quello più in alto) determina la lista contenuta nei successivi due ComboBox.
    Ho dovuto modificare lo stile dei caratteri contenuti nel CB, questo è avvenuto senza problemi, ma la cosa moooolto strana è che quando vado a selezionare il valore del primo CB, allora nei successivi due torna lo stile di default di Flash! Perchè???

    Il codice è così composto:
    codice:
    import fl.controls.ComboBox;
    import fl.data.DataProvider;
    import fl.events.ComponentEvent;
    
    var TF:TextFormat = new TextFormat();
    TF.font = "Arial";
    TF.size = 14;
    
    var d3_m_zona:ComboBox = new ComboBox();
    var d3_m_comune:ComboBox = new ComboBox();
    var d3_m_attivita:ComboBox = new ComboBox();
    
    d3_m_zona.width =330;
    d3_m_zona.height =24;
    d3_m_comune.width =330;
    d3_m_comune.height =24;
    d3_m_attivita.width =330;
    d3_m_attivita.height =24;
    
    
    d3_m_zona.textField.setStyle("textFormat", TF);
    d3_m_zona.dropdown.setRendererStyle("textFormat", TF);
    d3_m_comune.textField.setStyle("textFormat", TF);
    d3_m_comune.dropdown.setRendererStyle("textFormat", TF);
    d3_m_attivita.textField.setStyle("textFormat", TF);
    d3_m_attivita.dropdown.setRendererStyle("textFormat", TF);
    
    d3_m_zona.addEventListener(Event.CHANGE, cambia_zona3);
    
    function cambia_zona3 (event:Event):void {
    
    if (d3_m_zona.selectedItem.data == "abc")
       {
    	com3 = [
    {label:"tutti", data:"tutti"},
    {label:"1", data:"1"},
    {label:"2", data:"2"},
    {label:"3", data:"3"},
    ];
    
        atti = [
    	{label:"tutti", data:"tutti"},
    	{label:"A", data:"a"},
    	{label:"B", data:"b"},
    	{label:"C", data:"c"},
    	];
    
    d3_m_comune.dataProvider = new DataProvider(com3);
    d3_m_comune.move(74.2, 310);
    
    d3_m_attivita.dataProvider = new DataProvider(atti);
    d3_m_attivita.move(74.2, 345);
    }//fine if
    
    //altri if identici (cambiano solo i dati all'interno dei ComboBox)
    }//fine funzione
    Perchè succede che cambiando il valore del primo CB i seguenti (d3_m_comune e d3_m_attivita) tornano al carattere di default???

    Non me lo riesco a spiegare!
    Grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    165
    Niente? Ah comunque c'è un piccolo errore nel codice: una volta che viene settato lo stile del ComboBox, questi vengono popolati e aggiunti allo stage tramite la funzione addChild. Questo l'ho omesso anche perchè funziona correttamente! E' quando i CB vengono cambiati dalla funzione cambia_zona3 che si presenta l'errore menzionato!

    Grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.