首页 > 其他 > 详细

as3.0中为TextField的文字添加样式

时间:2015-07-15 07:02:06      阅读:1094      评论:0      收藏:0      [点我收藏+]

    为TextField中文字添加样式的方式有多种,下面只说我常用的一种。通过TextField的htmlText属性及styleSheet属性来为文字添加样式。htmlText可以为文字添加标签,而styleSheet则为标签中添加的class定义样式。自摘代码片段如下:

public class Main extends Sprite 
	{
		
		private var userNameInfo:TextField;
		
		public function Main() 
		{
			this.init();
			this.doDrawInit();
		}
		
		private function init():void {
			this.userNameInfo = new TextField();
			this.userNameInfo.width = 300;
			
			this.userNameInfo.type = TextFieldType.INPUT;
			
			this.userNameInfo.background = true;
			this.userNameInfo.backgroundColor = 0xeeeeee;
			this.userNameInfo.x = 10;
			this.userNameInfo.y = 10;
			
			var newStyle:StyleSheet = new StyleSheet();//(1)
			var styleObj:Object = new Object();
            styleObj.fontWeight = "bold";
            styleObj.color = "#660066";
			styleObj.fontSize  = 30;
			styleObj.fontStyle = "normal"; //可识别的值为 normal 和 italic。
			styleObj.display = "block";//受支持的值为 inline、block 和 none。
			styleObj.textAlign = "center";//可识别的值为 left、center、right 和 justify。
            newStyle.setStyle(".defStyle", styleObj);

			this.userNameInfo.styleSheet=newStyle;
			this.userNameInfo.htmlText = ‘<span class="defStyle">用户名</span>‘;
			this.doDrawInit();
			
			
			var textinfo :TextLineMetrics = this.userNameInfo.getLineMetrics(0);
			
		
			
		}
		
		private function doDrawInit():void {
			this.addChild(this.userNameInfo);
		}
		
}

可以分析上面的代码可得,首先定义StyleSheet(1),然后为利用该对象中的setStyle方法,定义一个class=deFStyle的样式对象,再一步把需要设定该样式的TextField对象进行属性设定,当然设定其styleSheet属性为之前定义的StyleSheet对象。最以用TextField的htmlText来设定文本,当然同时带有标签,只是标签中添加一个class属性,其值为之前设定的class值。

as3.0中为TextField的文字添加样式

原文:http://quietnight.blog.51cto.com/7163892/1674252

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!