2010-01-15 17 views
7

¿Cómo puedo cambiar el color de selección ("resaltar") de un TextField en actionscript 3? Tengo un campo de texto de entrada con texto blanco sobre fondo negro y, como resultado, las selecciones son invisibles, lo que es horrible para la usabilidad. ¡Gracias!Cambiar el color de selección de TextField en AS3

Respuesta

-3

Prueba esto:

var c:Color = new Color(MyTextField); 

c.setTransform({rb:255}); 

o para un mayor acercamiento hasta la fecha:

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/geom/ColorTransform.html#includeExamplesSummary

+2

¿Qué objeto de color se supone que debemos importar para que funcione? No encuentro nada. ¿Supongo que es un enfoque AS2? ? Siguiendo el enlace anterior a la documentación de ColorTransform no está claro, tampoco ... – gMale

+0

Estoy de acuerdo con gmale, esta no es una respuesta precisa. – Veehmot

+0

Creo que esta técnica ha sido compatible desde AS1 :) funcionó para mí de todos modos;) – PeanutPower

3

Otro enfoque es utilizar Text Layout Framework, específicamente un TextFlow utilizando un SelectionManager. Con TLF, puede controlar directamente las propiedades SelectionFormat utilizadas para su texto.

p. Ej.

TextFlow.defaultConfiguration.focusedSelectionFormat = new SelectionFormat(0x00FFFF); 

Hay un poco de una curva de aprendizaje para recoger manera de hacer las cosas de la TLF, pero la recompensa es significativamente mayor personalización de texto.

+1

¡Funciona a la perfección! El único problema es que usar TLF hace que mi SWF aumente de 250 KB a 656 KB. Eso es una gran cantidad solo por poder cambiar el color de selección ... – jowie

+0

parece ser porque también estoy exportando un SWC ... Algo que tengo que hacer para que los metadatos sean compilados (usando RobotLegs) ... – jowie

Cuestiones relacionadas