 MythColor
职务:普通成员
等级:1
金币:0.0
发贴:43
|
#12003/5/20 14:46:24
用_root.creatTextField可以创建一个动态的文本,可以改变位置,颜色之类的属性 但是我想实现很多mc才有的变化效果,比如alpha渐变,变形,随机运动之类的,我想单纯的TextField对象不能实现吧,所以就想把TextField包含在一个MC(anyMC)里面 然后用 _root.anyMC.creatTextField("myTXT",1,100,100,80,20); myTXT.Text=usersTXT; myTXT.setTextFormat(myformat); 其中,usersTXT是用户输入的字符串变量,myformat是已经定义好的格式。 但是这样不能动态显示用户输入的字符,不知道是哪里错了。 大家帮我看看吧,谢谢!
|
 UndeadCraft
职务:版主
等级:4
金币:10.0
发贴:1993
|
#22003/5/20 17:28:06
路径问题吧 在myTXT前面加上anyMC.
|
 5D荣誉版主
职务:普通成员
等级:2
金币:1.0
发贴:515
|
#32003/5/21 9:14:31
alpha不行,套mc也不行,除非embed font,随机运动倒是可以,也没必要套mc
|
 MythColor
职务:普通成员
等级:1
金币:0.0
发贴:43
|
#42003/5/21 9:46:47
那就是说,我想实现的效果现阶段还不能实现了? 除非是静态的文字,没有交互性,而且要一个一个地做?
斑竹说"除非embed font" 是什么意思? 嵌入式文字?? 是你的猜想还是现实的技术?
"也没必要套mc" ? 为什么? 是不是FlashMX在编译时就定了MC的内容,不支持动态变化MC的内容?
|
 5D荣誉版主
职务:普通成员
等级:2
金币:1.0
发贴:515
|
#52003/5/21 23:03:55
embed font就是 嵌入式文字,我没试过语句控制embed font,TextField.embedFonts=true; 可以试试,不过中文是肯定不行的。 另外,textField本身就有_x和_y属性,实现个随机运动根本没有必要套mc的阿。
|
 MythColor
职务:普通成员
等级:1
金币:0.0
发贴:43
|
#62003/5/23 11:09:32
斑竹所言极是. 不过我想做很炫的效果,不是变变_x,_y就能做到的呀,该怎么办呢? 我主要是想用面向对象的方法做,不做重复劳动.... 对了,Flash可以创建对象吧,能不能自己定义一个这样的对象呢?怎么做呢?
|
 5D荣誉版主
职务:普通成员
等级:2
金币:1.0
发贴:515
|
#72003/5/23 12:00:18
一般来说,function就是对象。 function me(){} 就是定义了一个me对象。 我不太明白你所说的“一个这样的对象”,指的是什么意思, 或者你可以把各个效果分开做,比如: TextField.prototype.randomMovie=function(){ 随机运动效果代码... } TextField.prototype.coolAlpha=function(){ alpha代码,这个倒是可以用和背景色差值变通的不完美实现 } 有空的话我还想写几段呢。
|
 5D荣誉版主
职务:普通成员
等级:2
金币:1.0
发贴:515
|
#82003/5/23 12:07:38
另外,如果没有嵌入字体的话,_width,_height,_rotation可能都不行,我还真没仔细试验过这些,但是没有嵌入字体的话_width,_height都只是改变文本匡的大小,而不是里面文字的大小,倒是可以用setTextFormat来实现变大小,但是_rotation什么的可能没办法了。
|
 MythColor
职务:普通成员
等级:1
金币:0.0
发贴:43
|
#92003/5/23 15:11:22
多谢斑竹指点! 其实我的问题的核心,就是怎样让动态文本实现所有MC能实现的视觉效果. 当然不只是运动啦,旋转变形啦之类的,还有颜色,还可以duplicate,然后做个拖尾或是残影的效果....
还有,我不太懂TextField.prototype.randomMovie=function()... 怎么继承啊?
|
 5D荣誉版主
职务:普通成员
等级:2
金币:1.0
发贴:515
|
#102003/5/23 22:42:42
没有涉及到继承的问题,只是拓展了TextField的方法。 比如说: TextField.prototype.x=function(){ .... } 调用只需 textFieldName.x()即可。 duplicate不行,mc的duplicate也只不过是复制原本的mc,而无法复制语句执行以后的mc。其实一个for循环倒也能解决问题。
|