Comunidad de diseño web y desarrollo en internet online

[flash AS3.0] Problema con los componentes. Cambiar el color

Citar            
MensajeEscrito el 14 Ene 2010 10:41 pm
Hola a todos al final me decido en postear porque ya no que hacer llebo varios dias buscando informacion en las ayudas de flash y en google y no encuentro la solucion.

El tema es que necesito cambiar el color blanco por defecto de la lista desplegable de un componente combobox en concreto mediante codigo por otro color.

Lo hice en modo edicion pero me cambian de color todos los componentes lista que forman parte de cualquier otro componente por lo que no me sirve.

E hecho pruebas de todo tipo con cellrenderer, setStyle, setRendererStyle, setProperty Etc etc.. y no consigo descubrir como hacerlo, encontre algunos ejemplos con cellRenderer pero eran para AS2.0 e buscado en paginas en ingles y escudriñado todo resultado pero nada no consigo dar con la solucion, espero que me podais hechar una mano pk stoy completamente bloqueado con el tema gracias de antemano.

Por giskard

110 de clabLevel



Genero:Masculino  

Programador y diseñador web

msie8
Citar            
MensajeEscrito el 14 Ene 2010 11:22 pm

Código Flex :

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="top"
        backgroundColor="white">

    <mx:Style>
        .myCustomComboBox {
         dropdownStyleName: myCustomDropdown;
        }
        .myCustomDropdown {
         backgroundColor: #3300ff;
        }
    </mx:Style>

    <mx:Array id="arr">
        <mx:Object label="Solisarg" />
        <mx:Object label="Freddie" />
        <mx:Object label="Zguishez" />
        <mx:Object label="Mx" />
        <mx:Object label="Dano" />
        <mx:Object label="Daz" />
        <mx:Object label="Tmeister" />
    </mx:Array>

    <mx:Form>
        <mx:FormItem label="Normal:">
            <mx:ComboBox id="comboBox1"
                    dataProvider="{arr}" />
        </mx:FormItem>
        <mx:FormItem label="Con Estilo:">
            <mx:ComboBox id="comboBox2"
                    dataProvider="{arr}"
                    styleName="myCustomComboBox" />
        </mx:FormItem>
    </mx:Form>
</mx:Application>


Si entendi bien tu pregunta, quieres cambiarle el fondo a un combobox; y solo a uno.
Espero este codigo sea lo que buscas, te lo dejo en tiempo de diseño ;-)

Por rolv

Claber

2000 de clabLevel

3 tutoriales

 

firefox
Citar            
MensajeEscrito el 15 Ene 2010 08:36 am
Hola gracias por la ayuda, supongo que ese ejemplo es para flex es que no se como trasportarlo a flash de todas maneras tmb queria comentar si alguien sabe como cambiar el color de alguno de los estados de un combobox dinamicamente lo digo porque el componente list forma parte del componente combobox asi que accediendo en modo edicion e visto que la ruta al estado upSkin seria esta ComboBox.List.CellRenderer.CellRenderer_upSkin.Up_Skin osea cambiando el color del mc Up_Skin conseguiria cambiar el color de fondo de la lista desplegable del combobox, en fin no se bueno pues lo dicho si me pudieras implementar tu codigo de flex para flash te lo agradeceria.

Por giskard

110 de clabLevel



Genero:Masculino  

Programador y diseñador web

msie8
Citar            
MensajeEscrito el 15 Ene 2010 10:21 am
Bueno señores después de 2 días al final conseguí llegar a un ejemplo practico que me sirvió y a sido tal la explosión de alegría que me a dado que voy a poner un minitutorial que espero que a alguien le sirva

Empecemos

Creamos un nuevo documento flash as3.0
Agregamos 1 componente ComboBox al escenario accedemos al panel propiedades y le asignamos el nombre de instancia (cmb).

Bien ahora abrimos la librería y nos dirigimos a la carpeta Component Assets la desplegamos y después desplegamos la carpeta CellRendererSkins, bien ahora seleccionamos el movieclip CellRenderer_upSkin y lo duplicamos dandole el siguiente nuevo nombre CellRenderer_upSkinGris luego accedemos al linkage y lo exportamos para actionscript, una vez hecho esto accedemos al movieclip CellRenderer_upSkinGris
En modo edición y modificamos el color blanco por un gris.



Bien ahora nos iremos al primer fotograma del escenario y colocaremos el siguiente código

Código ActionScript :

cmb.dropdown.setRendererStyle("upSkin", CellRenderer_upSkinGris);


Y probamos la película, veremos que el fondo del desplegable es de color gris.

Sabemos que cmb es el nombre de instancia de nuestro componente combobox del escenario.
dropdown nos da el acceso al objeto lista que se encuentra dentro del combosbox como si hiciéramos cmb.lista
Y setRendererStyle sustituye un mc por otro.

Si quisiéramos cambiar el estado del combobox seria.

Código ActionScript :

cmb.setStyle("upSkin", CellRenderer_upSkinGris);


Bueno pues nada esta a sido la solución que e encontrado, si alguien sabe como hacerlo de alguna forma mejor sin necesidad de duplicar el movieclip de la librería agradecería que lo explicara un saludete a todos y gracias por el interes.

Por giskard

110 de clabLevel



Genero:Masculino  

Programador y diseñador web

msie8
Citar            
MensajeEscrito el 18 May 2010 07:36 am
giskard mil gracias por la info!!!

Estaba buscando al respecto de esto y no encontraba por ningún lado, esto me ha sido de ENORME ayuda!

Ahora no consigo modificar el skin del scrollBar del comboBox, no se como acceder a él, sigo buscando, pero si alguien sabe y me dice, pues mejor que mejor :)

Una vez mas, muchas gracias por la info.

Por torpedete

85 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.