Comunidad de diseño web y desarrollo en internet online

[Componentes] Crear estilo y aplicarlo

Citar            
MensajeEscrito el 23 Mar 2006 04:08 pm
Buenas, tengo la necesidad de usar algunos componentes combobox de Flash 8 y al mismo tiempo necesitaria cambiarles algunos colores para que se acomoden al diseño de un sitio. Bien, gracias a este [url=http://www.cristalab.com/tutoriales/28/personalizacion-de-los-componentes-de-flash-mx-2004
]Tutorial[/url] encontre que con esto:

nombre_del_combo.setStyle("backgroundColor", "0xCCBBDD");

puedo cambiar el fondo del combobox y lo mismo podria hacer con las demas partes del componente. Bien hasta ahi barbaro, el tema es que tengo varios combobox y no quisiera tener que poner 10 parametros para cada uno.

Buscando por internet encontre esto que me vendria genial:

combobox_estilo = new FStyleFormat();
combobox_estilo.FStyleFormat.textColor = 0xFF0000;
combobox_estilo.backgroundColor = "0xCCCCCC";
combobox_estilo.highlight3D = 0xCCCCCC;
combobox_estilo.shadow = 0xCCCCCC;
combobox_estilo.textColor = 0x999999;
combobox_estilo.textAlign = "center";
combobox_estilo.addListener(combo_responsables);
combobox_estilo.applyChanges();

Se crea un estilo y luego con addListener se le indica a que instancias se lo debe aplicar. Bueno, dicho codigo no me esta funcionando en Flash 8. alguien sabe por que? a alguno se le ocurre alguna manera de solucionar mi problema sin tener que cambiar los estilos de los combobox uno por uno?

Desde ya muchisimas gracias[/url]

Por Frid

20 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Mar 2006 09:45 pm
hola,
primero, decirte que te estas metiendo en un terreno dificil, personalizar los componentes puede ser arduo por la jeraquia de herencias entre clases de componentes, al cambiar el estilo de un componente (TextArea) puedes afectar otro(ComboBox) que lo utilice y no desees que tenga el estilo anterior...

veo dos opciones, modificar a piñon los estilos

Código :

_global.styles.ComboBox = new mx.styles.CSSStyleDeclaration();
_global.styles.ComboBox.setStyle("themeColor","haloBlue");
//_global.styles.ComboBox.setStyle(Prodiedad,NuevoValor);

o simplemente, utilizar un bucle for para cambiar las propiedades de tus combos



[moderador]por favor usar etiquetas code al postear codigo, se descuadraba el foro y asi se ofrece mejor lectura del post, gracias[/moderador]

Por goliatone

66 de clabLevel



 



Ultima edición por goliatone el 27 Mar 2006 03:20 pm, editado 1 vez

firefox
Citar            
MensajeEscrito el 27 Mar 2006 03:17 pm
Muchas Gracias goliatone, hoy mismo vere de probar las alternativas que me has dado. Gracias!

Por Frid

20 de clabLevel



 

firefox
Citar            
MensajeEscrito el 27 Mar 2006 03:20 pm
buen suerte...

Por goliatone

66 de clabLevel



 

firefox

 

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