Actionscript 3 1119:通过静态类型flash的引用访问可能未定义的属性alpha。utils:Timer。
我的剧本有问题。。。它的一切都在工作,除了点击的东西。这是一个二进制时钟,我想把灯调暗Actionscript 3 1119:通过静态类型flash的引用访问可能未定义的属性alpha。utils:Timer。,actionscript-3,Actionscript 3,我的剧本有问题。。。它的一切都在工作,除了点击的东西。这是一个二进制时钟,我想把灯调暗 package{ import flash.events.MouseEvent; import flash.display.MovieClip; import flash.utils.Timer; import flash.events.TimerEvent; import com.greensock.*; import com.greensock.easing.*; import flash.events.
package{
import flash.events.MouseEvent;
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import com.greensock.*;
import com.greensock.easing.*;
import flash.events.TouchEvent;
public class Main extends MovieClip
{
var clock:Timer=new Timer(1000);
var date:Date=new Date();
var hr:int;
var min:int;
var sec:int;
var bits:Array;
public function Main()
{
init();
tvinnet.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler);
}
private function init():void
{
sec=date.getSeconds();
min=date.getMinutes();
hr=date.getHours();
turnBits(converter(sec),'S');
turnBits(converter(min),'M');
turnBits(converter(hr),'H');
clock.start();
clock.addEventListener(TimerEvent.TIMER, setTime);
}
function fl_MouseOverHandler(e:MouseEvent):void
{
clock.alpha = 0;
}
private function setTime(e:TimerEvent):void
{
date=new Date();
sec=date.getSeconds();
min=date.getMinutes();
hr=date.getHours();
turnBits(converter(sec),'S');
turnBits(converter(min),'M');
turnBits(converter(hr),'H');
}
private function dec2bin(dec:int, length:int)
{
var bin:Array= new Array();
while((dec/2)>0)
{
bin.push(dec%2);
dec=dec/2;
}
while(bin.length<length) bin.push(0);
return bin;
}
private function converter(num:int)
{
var st:String=String(num);
if(st.length==1)st='0'+st;
var fDigit:int=int(st.charAt(1));
var sDigit:int=int(st.charAt(0));
var fColumn:Array=dec2bin(fDigit,4);
var sColumn:Array=dec2bin(sDigit,3);
var result:Array=fColumn.concat(sColumn);
return result;
}
private function turnBits(newBits:Array, target:String)
{
for(var a:int=0;a<newBits.length;a++)
{
if((a!=6)||(target!="H"))
{
if(newBits[a]==0) TweenMax.to(this.getChildByName(target+String(a)), 1, {glowFilter:{color:0x00cbff, alpha:0, blurX:15, blurY:15,strength:1},alpha:.1});
else TweenMax.to(this.getChildByName(target+String(a)), 1, {glowFilter:{color:0x00cbff, alpha:1, blurX:20, blurY:20,strength:.8},alpha:1});
}
}
}
}
包{
导入flash.events.MouseEvent;
导入flash.display.MovieClip;
导入flash.utils.Timer;
导入flash.events.TimerEvent;
导入com.greensock.*;
导入com.greensock.com;
导入flash.events.TouchEvent;
公共类Main扩展了MovieClip
{
var时钟:定时器=新定时器(1000);
变量日期:日期=新日期();
var-hr:int;
var-min:int;
var-sec:int;
变量位:数组;
公共功能Main()
{
init();
tvinnet.addEventListener(MouseEvent.MOUSE\u OVER,fl\u MouseOverHandler);
}
私有函数init():void
{
sec=date.getSeconds();
min=date.getMinutes();
hr=date.getHours();
转位(转换器(秒),‘S’;
转头(转换器(最小值),‘M’;
旋转钻头(转换器(hr),‘H’;
clock.start();
clock.addEventListener(TimerEvent.TIMER,设置时间);
}
函数fl_MouseOverHandler(e:MouseEvent):void
{
clock.alpha=0;
}
私有函数设置时间(e:TimerEvent):无效
{
日期=新日期();
sec=date.getSeconds();
min=date.getMinutes();
hr=date.getHours();
转位(转换器(秒),‘S’;
转头(转换器(最小值),‘M’;
旋转钻头(转换器(hr),‘H’;
}
专用函数dec2bin(dec:int,length:int)
{
var bin:Array=new Array();
而((12月2日)>0)
{
仓位推送(12月%2);
dec=dec/2;
}
而(bin.length将时钟变量定义为计时器,然后尝试访问其alpha属性,该属性在计时器中不可用
function fl_MouseOverHandler(e:MouseEvent):void
{
clock.alpha = 0; //wrong approach, use this.alpha = 0;
}