发新话题
打印

[求救] 恳请终极讨厌版主指教,谢谢!

恳请终极讨厌版主指教,谢谢!

舞台上有4根圆柱,分别命名为zhu1,zhu2,zhu3,zhu4  ,this["zhu"+d]原来位置是213.8,我想this["txt"+d]都刚好落在圆柱顶端上。谢谢指教!
代码如下:
onEnterFrame = function () {
for (var d = 4; d>0; d--) {
  this["zhu"+d]._yscale = Number(this["txt"+d].text);
  this["txt"+d]._y = Number(213.8-this["txt"+d].text-150)  
}
};
现在的结果是:有的落在顶端,有的离顶端远些,有的还没到达顶端。

TOP

复制内容到剪贴板
代码:
for (var p:Number = 2; p>=0; p--) {
this["_txt"+p].restrict = "0-9";//限制只能输入数字
this["_txt"+p]._mc = this["z_mc"+p];//给文本添加属性记住自己要控制的MC
this["_txt"+p].onChanged = function() {//输入文本被改变时,改变MC高度
  this._mc._height = this.text;//设置MC高度为文本值
  this._y = this._mc._y-this._mc._height-50;//控制文本坐标比MC的顶端还高出50像素
};
}

附件

txt.fla (48 KB)

2008-5-13 18:51, 下载次数: 32

txt.swf (3.27 KB)

2008-5-13 18:51, 下载次数: 37

TOP

感谢啊!

TOP

终极讨厌版主:如果文本是动态文本,数据是从外面读进来的,能实现同样的效果吗?麻烦您啦,谢谢!

TOP

如果文本是动态文本,不会触发onChanged事件,但可以在给文本赋值的时候执行和onChangeds内相同的代码。

TOP

我把onChanged事件去掉,把第一个文本改为动态文本,并且给它123的值,运行之后未见mc变化.还盼版主指教.
for (var p:Number = 2; p>=0; p--) {
        this["_txt"+p].restrict = "0-9";//限制只能输入数字
        this["_txt"+p]._mc = this["z_mc"+p];//给文本添加属性记住自己要控制的MC
       
                this._mc._height = this.text;//设置MC高度为文本值
                this._y = this._mc._y-this._mc._height-50;//控制文本坐标比MC的顶端还高出50像素
       
}

TOP

对了,我用的是flash8.0

TOP

问题已经解决,非常感谢终极讨厌版主!

TOP

发新话题