Actionscript 3 在MovieClip ActionScript 3中绘制角度
我有一张由MovieClip城市组成的地图,在地图MovieClip的顶层有一个点击功能。我尝试这样做,如果我点击一个城市,一个矩形将被绘制。以下是代码:Actionscript 3 在MovieClip ActionScript 3中绘制角度,actionscript-3,movieclip,Actionscript 3,Movieclip,我有一张由MovieClip城市组成的地图,在地图MovieClip的顶层有一个点击功能。我尝试这样做,如果我点击一个城市,一个矩形将被绘制。以下是代码: function rpress(a) { trace( "trying" ); var b:MovieClip = new MovieClip(); b.graphics.beginFill(0xFF0000); b.graphics.drawRect(0,0,100,80); b.graphics.endF
function rpress(a)
{
trace( "trying" );
var b:MovieClip = new MovieClip();
b.graphics.beginFill(0xFF0000);
b.graphics.drawRect(0,0,100,80);
b.graphics.endFill();
b.x = 150;
b.y = 150;
addChild( b );
trace("done")
}
执行跟踪命令,但不绘制矩形。我尝试了MovieClip(root).addChild…,stage.addChild…,MovieClip(parent.addChild…
和其他
你知道吗?谢谢大家!
完整代码:
双击map MovieClip->84层欢迎我们->选择名为“Action layer”的层ACTIONS-FRAME:
function rbtxt(a)
{
var _loc2 = a;
var _loc3 = this;
balon._visible = true;
arbtxt = ilad.split(",");
balon.txt.text = arbtxt[_loc2];
_loc3["x" + _loc2].play();
balon._x = _loc3["x" + _loc2]._x;
balon._y = _loc3["x" + _loc2]._y - _loc3["x" + _loc2]._height / 2 + 5;
}
//End of the function
function rbalon(a)
{
balon._visible = false;
this["x" + a].gotoAndStop(1);
}
//End of the function
function rpress(a)
{
trace( "trying" );
var b:MovieClip = new MovieClip();
b.graphics.beginFill(0xFF0000);
b.graphics.drawRect(0,0,100,80);
b.graphics.endFill();
b.x = 150;
b.y = 150;
addChild(b );
trace("done")
}
ilad = "CITY NAMES....."
ilurl = "CITY URLS....."
您没有显示足够的代码,因此我们只能猜测。通过查看您提供的信息,您可以尝试:
this["x" + a].addChild( b );
或
但这只是猜测…Sprite可以访问图形,尝试只对复杂对象使用Movieclip,例如加载到中的SWF和带有基于时间轴的动画和变量的Flash库资产等
function drawRect()
{
trace( "trying" );
//var b:MovieClip = new MovieClip();
var b:Sprite = new Sprite();
b.graphics.beginFill(0xFF0000);
b.graphics.drawRect(0,0,100,80);
b.graphics.endFill();
b.x = 150;
b.y = 150;
addChild( b );
trace("done")
}
嗨,尝试将电影剪辑添加到舞台上,然后像这样执行绘图camamnd
var b:MovieClip = new MovieClip();
addChild(b );
b.graphics.beginFill(0xFF0000);
b.graphics.drawRect(0,0,100,80);
b.graphics.endFill();
b.x = 150;
b.y = 150;
雪碧,但如何?像变量b:Sprite=newsprite()?如果你的意思是它不起作用。。。它给出了“'Sprite'无法加载”错误。您可以发布您的.fla或完整代码吗?很好,rpress()函数看起来不错,所以它一定是其他函数。好的,我现在就编辑我的帖子。仍然没有太多上下文,rpress()是如何调用的?你说你试过stage.addChild(b)但仍然没有看到矩形?以后如何去掉矩形?单击城市电影剪辑时,会调用rpress(),如在(release){u parent.rpress(a);}上单击城市电影剪辑,我们可以使用Shape类来实现更为简约和轻量级的效果。顺便说一句,我不知道你为什么会被否决,因为这是一个很好的观点,反正不是我,我需要150个名声才能如此残忍;)形状类将是最有效的。。。这不是问题的答案,在评论中更合适。我来这里不是为别人做工作,而是为他们指出正确的方向。从现在起,我将只发布AdobeLive文档的链接。人啊。
var b:MovieClip = new MovieClip();
addChild(b );
b.graphics.beginFill(0xFF0000);
b.graphics.drawRect(0,0,100,80);
b.graphics.endFill();
b.x = 150;
b.y = 150;