【发布时间】:2012-07-08 12:18:24
【问题描述】:
我是 Flash 新手,我真的不知道我收到此错误的原因是什么:
TypeError:错误 #2007:参数文本必须为非空。
在 flash.text::TextField/set text()
在 sgmap_fla::MainTimeline/mapOver()
我的动作脚本:
description.countryName_txt.text = "";
description.zone_txt.text = "";
map_mc.buttonMode=true;
map_mc.addEventListener(MouseEvent.MOUSE_OVER, mapOver);
map_mc.addEventListener(MouseEvent.MOUSE_OUT, mapOut);
map_mc.northZone.countryName = "Singapore";
map_mc.northZone.zone = "North Zone";
map_mc.centralZone.countryName = "Singapore";
map_mc.centralZone.zone = "Central Zone";
map_mc.eastZone.countryName = "Singapore";
map_mc.eastZone.zone = "East Zone";
map_mc.westZone.countryName = "Singapore";
map_mc.westZone.zone = "West Zone";
map_mc.southZone.countryName = "Singapore";
map_mc.southZone.zone = "South Zone";
function mapOver(e:MouseEvent):void{
var mapItem:MovieClip = e.target as MovieClip;
description.countryName_txt.text = mapItem.countryName;
description.zone_txt.text = mapItem.zone;
description.gotoAndStop(mapItem.name);
TweenMax.to(mapItem, .5, {tint:0xFF9900});
TweenMax.fromTo(description, .5, {alpha:0, x:50, blurFilter:{blurX:80}}, {alpha:1, x:10, blurFilter:{blurX:0}});
}
function mapOut(e:MouseEvent):void{
var mapItem:MovieClip = e.target as MovieClip;
TweenMax.to(mapItem, .5, {tint:0x990000});
}
【问题讨论】:
-
文本字段文本不能设置为空。这可以通过在设置文本字段之前跟踪
countryName和zone的mapItem属性来确认:trace(mapItem.countryName); trace(mapItem.zone);在您的mapOver事件处理程序中,mapItem似乎不是包含这些属性的区域。 -
嗨 Jason,虽然我从
description.countryName_txt.text = mapItem.countryName; description.zone_txt.text = mapItem.zone;更改为description.countryName_txt.text = trace(mapItem.countryName); description.zone_txt.text = trace(mapItem.zone);,但它似乎不起作用
标签: actionscript