[闪吧]打字效果中的颜色控制
对AS有一些了解的朋友都应该知道如何用脚本来实现打字效果吧,其实这个效果不难,关键就是关于字符串函数的一些运用,我这里说的是在实现了打字效果以后,对用脚本产生的文本中的文字颜色、边框颜色以及背景颜色所做的一些控制,其实原理不难,关键是这种解决思路,能够举一反三是最重要的。
点击浏览该文件
下面简要说一下思路:
其实主要都是用脚本来实现的,新建文件以后,从库中拖四个按钮到主场景中,将实例名分别命名为but1 but2 but3 和but4,然后延长到第三桢。再新建一图层,插入两个关键桢,在第一桢上写:
fscommand("allowscale","false");
_root.onLoad = function() { //在AS2.0中使用变量之前要先定义
_root.createTextField("wenzi", 1, 100, 100, 200, 270);
_root.wenzi.border = true;//为创建的文本设置边框
i = 1;//初始化变量
}
在第二桢上写:
a= "北风卷地白草折,胡天八月即飞雪。\r\n忽如一夜春风来,千树万树梨花开。\r\n散入珠帘湿罗幕,狐裘不暖锦衾薄。\r\n将军角弓不得控,都护铁衣冷难着。\r\n瀚海阑干百丈冰,愁云惨淡万里凝。\r\n中军置酒饮归客,胡琴琵琶与羌笛。\r\n纷纷暮雪下辕门,风掣红旗冻不翻。\r\n轮台东门送君去,去时雪满天山路。\r\n山回路转不见君,雪上空留马行处。";
//上面是将要用打字效果实现的文字附给一字符串变量,也就是将这些文字看做字符串
len = a.length;
//取得字符串的长度
if (i<=len) {
//在字符串的字数范围内执行以下语句
_root.wenzi.text = a.substr(0, i);
//逐步截取字符从而实现打字效果
}
_root.but1.onPress = function(){
//当按钮but1按下的时候
_root.wenzi.textColor = random(0xffffff);
//设置文本框中的文字颜色是随机变化的
}
_root.but2.onPress = function(){
//当按钮but2按下的时候
_root.wenzi.background = true;
//设置文本的背景为真
_root.wenzi.backgroundColor = random(0xffffff);
//设置文本的背景是随机颜色
}
_root.but3.onPress = function(){//当按钮but3按下的时候
_root.wenzi.borderColor = random(0xffffff);
//将边框颜色设置为随机变化重置为黑色
}
_root.but4.onPress = function(){//当按钮but4按下的时候
_root.wenzi.borderColor = 0x000000;
_root.wenzi.textColor = 0x000000;
//将边框和文字的颜色都重置为黑色
_root.wenzi.backgroundColor = 0x999999;
//将背景颜色设置为刚开始的颜色
}
在第三桢写:
i=i+1;//变量自加以后,然后再从第一桢开始播放
最后,测试结果。
其实过程很好理解,关键是解决问题的思路,大家如果考虑一下用TextField.setTextFormat() 这个方法能不能达到同样的效果,
大家可以试一下就知道了 呵呵 ^_^
点击浏览该文件
对AS有一些了解的朋友都应该知道如何用脚本来实现打字效果吧,其实这个效果不难,关键就是关于字符串函数的一些运用,我这里说的是在实现了打字效果以后,对用脚本产生的文本中的文字颜色、边框颜色以及背景颜色所做的一些控制,其实原理不难,关键是这种解决思路,能够举一反三是最重要的。
点击浏览该文件
下面简要说一下思路:
其实主要都是用脚本来实现的,新建文件以后,从库中拖四个按钮到主场景中,将实例名分别命名为but1 but2 but3 和but4,然后延长到第三桢。再新建一图层,插入两个关键桢,在第一桢上写:
fscommand("allowscale","false");
_root.onLoad = function() { //在AS2.0中使用变量之前要先定义
_root.createTextField("wenzi", 1, 100, 100, 200, 270);
_root.wenzi.border = true;//为创建的文本设置边框
i = 1;//初始化变量
}
在第二桢上写:
a= "北风卷地白草折,胡天八月即飞雪。\r\n忽如一夜春风来,千树万树梨花开。\r\n散入珠帘湿罗幕,狐裘不暖锦衾薄。\r\n将军角弓不得控,都护铁衣冷难着。\r\n瀚海阑干百丈冰,愁云惨淡万里凝。\r\n中军置酒饮归客,胡琴琵琶与羌笛。\r\n纷纷暮雪下辕门,风掣红旗冻不翻。\r\n轮台东门送君去,去时雪满天山路。\r\n山回路转不见君,雪上空留马行处。";
//上面是将要用打字效果实现的文字附给一字符串变量,也就是将这些文字看做字符串
len = a.length;
//取得字符串的长度
if (i<=len) {
//在字符串的字数范围内执行以下语句
_root.wenzi.text = a.substr(0, i);
//逐步截取字符从而实现打字效果
}
_root.but1.onPress = function(){
//当按钮but1按下的时候
_root.wenzi.textColor = random(0xffffff);
//设置文本框中的文字颜色是随机变化的
}
_root.but2.onPress = function(){
//当按钮but2按下的时候
_root.wenzi.background = true;
//设置文本的背景为真
_root.wenzi.backgroundColor = random(0xffffff);
//设置文本的背景是随机颜色
}
_root.but3.onPress = function(){//当按钮but3按下的时候
_root.wenzi.borderColor = random(0xffffff);
//将边框颜色设置为随机变化重置为黑色
}
_root.but4.onPress = function(){//当按钮but4按下的时候
_root.wenzi.borderColor = 0x000000;
_root.wenzi.textColor = 0x000000;
//将边框和文字的颜色都重置为黑色
_root.wenzi.backgroundColor = 0x999999;
//将背景颜色设置为刚开始的颜色
}
在第三桢写:
i=i+1;//变量自加以后,然后再从第一桢开始播放
最后,测试结果。
其实过程很好理解,关键是解决问题的思路,大家如果考虑一下用TextField.setTextFormat() 这个方法能不能达到同样的效果,
大家可以试一下就知道了 呵呵 ^_^
点击浏览该文件
回复Comments
作者:
{commentrecontent}