Han visto que existen muchas páginas dedicadas a la informática y poseen el famoso ARMA TU PC. Yo estoy luchando con uno de estos.
Poseo unos 16 ComboBox en escena y cada uno levanta los datos de sus correspondientes XML.
El XML posee dos labels "detalle" y "precio", los cuales son mostrados en el ComboBox de forma unificada.
Codigo XML ComboBox motherboard
Código XML :
<fechas> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> <dia modelos='Mother MSI' precio='U$S 523' /> </fechas>
Imagen del ComboBox (muestra el modelo y precio de forma unificada)
[img]http://www.technologicalbridge.com.ar/combobox.bmp[/img]
Lo que necesito es que cada opción seleccionada en cada uno de esos 16 ComboBox se muestre en un DataGrid.
Que el DataGrid muestre la información por columnas, "detalles" la primer columna, "precio" la segunda columna.
Y se agregue de manera automatica una Fila al final de todas las opciones del DataGrid llamada "Total" que me sume toda la columna "precio"
Lo que hay que tener en cuenta es que si la persona cambia una opción en el ComboBox ese cambio se refleje en el DataGrid de forma espontánea.
Aca les dejo el AS del Combobox, el cual es igual a todos los que están dando vuelta con algunos detalles.
Código ActionScript :
////////////////////////////////////////////COMBOBOX////////////////////////////////////////// //Realizo la carga del XML motherboard = new XML(); //Esto me elimina todo espacio en blanco que haya en mi XML motherboard.ignoreWhite = true; //Con esto pregunto si el XML se cargo sactifactoriamente motherboard.onLoad = function (success){ //Condicional if (success){ //Si todo sale OK //se crearan los arrays donde iran los datos. largo = motherboard.firstChild.childNodes.length; modelos = new Array(largo); precio = new Array(largo); //Luego de crear los array, pasamos a llenarlos for (i=0; i<largo; i++){ modelos[i] = motherboard.firstChild.childNodes[i].attributes.modelos; precio[i] = motherboard.firstChild.childNodes[i].attributes.precio; } //Por ultimo, luego de crear los arrays y llenarlos, llamo a la Funcion llenarCombo llenarCombo(); } //Si no se pudo cargar el XML else{ // Me muestre el siguiente error trace("No se pudo cargar el XML"); } } motherboard.load("armatupc/motherboard.xml"); ////////////////////////////////////////////FUNCIONES////////////////////////////////////////// function llenarCombo(){ //Le asigno un proveedor de datos losDatos = new Array(); //uno de mis comboBox posee el nombre Mother mother.dataProvider = losDatos; //Metemos al ComboBox los datos obtenidos del array for (i=0; i<modelos.length; i++){ //Unifico la informacion mostrando en el ComboBox el //modelo (detalle) y el precio losDatos.addItem({ label: modelos[i] + " " + precio[i]}); //Este es un listener que va a funcionar en el momento que se realiza //La seleccion de un objeto del combobox // Esto lo hice pero creo que no lo necesito para el DataGrid, solo me envia // lo seleccionado a un campo de texto dinamico (seleccion mother) mother.addEventListener("change", alSeleccionar); alSeleccionar = new Object(); alSeleccionar.change = function(evento){ _root.seleccion_mother.text=(evento.target.value); } } }
Paso a comentar mi idea.
¿Se puede crear para el DataGrid un Array de donde este va a tomar los datos y que cada ComboBox envíe datos a ese Array?
Tengo una idea minima de cómo trabajar con AS si alguien me da una ayudita se lo agradeceria.
De antemano, GRACIAS A TODOS!!!
