AS3.0元件参数,主场景如何引用
场景里面有一个元件A和一个动态文本框T,元件A里面有一个按钮a,然后在元件里面设立一个变量varp:string=“p”;我现在是想实现,点击a,然后变量赋值为a,然后T...
场景里面有一个元件A和一个动态文本框T,元件A里面有一个按钮a,然后在元件里面设立一个变量var p:string=“p”;我现在是想实现,点击a,然后变量赋值为a,然后T文本框显示p变量更改后的值。简单来讲,就是元件里面设置的变量,场景要如何引用。或者反过来,场景设置的全局变量,元件要如何引用
展开
展开全部
怎么说呢,在AS3.0中没有严格意义上的全局变量,所有的变量都是局部变量。你在元件A中创建了一个变量p,想在root中调用,那么你可以采取绝对路径的方式去访问,但因为你是在实例级的访问,所以根本是无法实现访问的,而var p:String="p";因为是类内部的私有变量,所以从封装的角度是不可能访问得到的,但我们可以采取一些方法来实现外部访问内部变量的问题。首先,你要把你创建的影片剪辑在库中点属性,将“为ActionScript导出”勾选上,然后在类名称中输入A,那么这个元件就是一个类了,但成为类的库中元件是不允许在时间轴创建变量,所以你必须把元件内的变量删除。然后你Ctrl+N新建一个AS3.0的类文件,将如下代码复制到类中,并保存在你fla元件相同的根文件夹下:
package {
import flash.display.Sprite;
public class A extends Sprite
{
private var p:String = "p";
public function A()
{
} public function get _p():String
{
return p;
}
}
}
在这个类中,声明了你所谓的变量p,通过属性_p来读取类内部的变量p的值。
然后你在主场景 时间轴的第一帧写下如下脚本:
var a:A=new A();
trace(a._p);
OK,祝你成功。
package {
import flash.display.Sprite;
public class A extends Sprite
{
private var p:String = "p";
public function A()
{
} public function get _p():String
{
return p;
}
}
}
在这个类中,声明了你所谓的变量p,通过属性_p来读取类内部的变量p的值。
然后你在主场景 时间轴的第一帧写下如下脚本:
var a:A=new A();
trace(a._p);
OK,祝你成功。
Sievers分析仪
2024-10-13 广告
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准...
点击进入详情页
本回答由Sievers分析仪提供
展开全部
①场景里:
A.a.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
T.text = A.p;
}
②元件里:
var p:String = "p";
a.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
var s = this.parent;
s.T.text = p;
}
2种方法
A.a.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
T.text = A.p;
}
②元件里:
var p:String = "p";
a.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
var s = this.parent;
s.T.text = p;
}
2种方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你怎么说,没有严格意义上的全局变量在AS3.0中,所有的变量是局部变量。创建一个变量P分量和要调用的根目录,然后你可以采取的绝对路径访问,但因为你是在实例级的访问中,他们根本无法实现访问,而VAR号码:字符串=“P “内部私有变量,所以从点的包是无法访问的,但我们可以采取一些方法来实现外部访问的内部变量。首先,你要创建一个影片剪辑库中的中点属性检查“为ActionScript导出”,然后在类名,进入A,那么这个元素是一类,但一个类库组件不能创建变量在时间轴上,所以你必须在变量中删除元素。然后你按Ctrl + N新建AS3.0类文件,将以下代码复制到类,并将它保存在FLA组件相同的根文件夹:
进口flash.display。包装。雪碧;
类A扩展雪碧
{
私人VAR号码:字符串=“P”;
函数A()
{
/>}公共职能_p():字符串
{
回报P;
}
}
}
在这个类中,声明你所谓的变量p读通过内的财产_p类的变量p的值。
然后你写的主场景时间轴的第一帧脚本如下:
VAR A:A = A();的
跟踪(a._p);
>“确定”祝你成功。
进口flash.display。包装。雪碧;
类A扩展雪碧
{
私人VAR号码:字符串=“P”;
函数A()
{
/>}公共职能_p():字符串
{
回报P;
}
}
}
在这个类中,声明你所谓的变量p读通过内的财产_p类的变量p的值。
然后你写的主场景时间轴的第一帧脚本如下:
VAR A:A = A();的
跟踪(a._p);
>“确定”祝你成功。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询