Hola a todos, estoy haciendo una pagina, en la que genero combos dinamicamente("el numero maximo de combos a generar son 36, que es el numero que solicito el usuario"), el problema que tengo es, que el usuario debe teclear el numero de combos que desee que aparezcan, la primera vez, no existe ningun problema, el problema comienza cuando se introduce otro numero de combos a mostrar, mi problema es que si por ejemplo la primera vez se solicitaron 3 combos y la 2da vez se piden 7 combos los primeros 3 combos estan vacios, y los 4 restantes estan llenos, les muestro el codigo con el que genero los combos.


Se envia la solicitud del numero de combos a mostrar.

Código ActionScript :

on (press) {
   if (num_punta.text != 0 and num_punta.text != "" and num_punta.text < 13) {
      for (i=1; i<=36; i++) {    
         this["lbl"+i].removeMovieClip();
         this["cmbmes"+i].removeMovieClip();
                                               this["txtimp"+i].removeMovieClip();
      }
                multi = (Number(num_punta.text) * 3);
   gen_compo(multi,Number(num_punta.text))
   }
}


Aqui esta la funcion que genera los combos

Código ActionScript :

function gen_compo(yvalor,xvalor) {
   genera("Un momento por favor")
   npunta = xvalor * 1;
   ninter = xvalor * 2;
   nbase  = xvalor * 3;
   cbmy= 130;
   xlbl= 110;
   xcmb= 590;
   ximp= 830;
   etiqueta = "Punta Comp. ";
   etik = "Punta";
   cont_lbl=0;

   for (i=1; i<=yvalor; i++) {      
     attachMovie("Label",    "lbl"+i, i+100,  {_x:xlbl, _y:cbmy});   
     this["lbl"+i].text=etiqueta+"("+i+")";
     cbmy=cbmy+30;
     if ((i % xvalor == 0) and (i>0)) {        
         attachMovie("Label",    "lblexe"+i, i*800,  {_x:xlbl, _y:cbmy});   
         this["lblexe"+i].text="Exed. "+etik;
         cbmy=cbmy+30;
         attachMovie("Label",    "lblcon"+i, i*802,  {_x:xlbl, _y:cbmy});
         this["lblcon"+i].text="Consumo "+etik;
         cbmy=cbmy+50;
         cont_lbl += 1;
         if (cont_lbl == 1) { 
            etiqueta = "Interm Comp. "; 
            etik = "Interm";
         }
         if (cont_lbl == 2) {  
            etiqueta = "Base Comp. ";
            etik = "Base";
         }
     }
   }
   cbmy= 130;
   for (i=1;i<=yvalor;i++) {
     attachMovie("ComboBox", "cmbmes"+i, i, {_x:xcmb, _y:cbmy});
     this["cmbmes"+i].setStyle("themeColor","haloBlue");
     this["cmbmes"+i].addItem({data:"00", label:"Opcion"});
     this["cmbmes"+i].addItem({data:"12a", label:"Dic Anterior"});
     this["cmbmes"+i].addItem({data:"01", label:"Enero"});
     this["cmbmes"+i].addItem({data:"02", label:"Febrero"});
     this["cmbmes"+i].addItem({data:"03", label:"Marzo"});
     this["cmbmes"+i].addItem({data:"04", label:"Abril"});
     this["cmbmes"+i].addItem({data:"05", label:"Mayo"});
     this["cmbmes"+i].addItem({data:"06", label:"Junio"});
     this["cmbmes"+i].addItem({data:"07", label:"Julio"});
     this["cmbmes"+i].addItem({data:"08", label:"Agosto"});
     this["cmbmes"+i].addItem({data:"09", label:"Septiembre"});
     this["cmbmes"+i].addItem({data:"10", label:"Octubre"});
     this["cmbmes"+i].addItem({data:"11", label:"Noviembre"});
     this["cmbmes"+i].addItem({data:"12", label:"Diciembre"});
     this["cmbmes"+i].rowCount=3;
     this["cmbmes"+i].addEventListener("change", this);
     
     attachMovie("TextInput", "txtimp"+i, i+700, {_x:ximp, _y:cbmy});
     this["txtimp"+i].setStyle("textAlign", "right");
     this["txtimp"+i].text = "0";
     cbmy=cbmy+30;
      
   this.change = function(mcombo:Object) {
      h2 = mcombo.target;
      numc = substring(h2,15,length(h2));
      lab = substring(h2,9,6);
      z = lab;
      numcom = yvalor;
      switch(lab) {
         case "cmbmes":
                        
               recupera_cuota_fija(eval(h2).selectedItem.data,xanio,xtar,"CARGOS FIJOS","Sur","punta",npunta);                     break;   
      }   
   }
} // fin de la funcion gen_compo



Les agradezco, cualquier idea.