2010年07月21日 星期三 15:29
通常如果文字过多,文本框不能全部显示的情况下,我们会使用文字滚动来保持版面的结构。今天在制作滚动文字的时候发现了一个很郁闷的现象,于是对 TestField的scrollH属性进行了一些测试。主要问题是出在,当TestField的大小发生改变时,scrollH属性无法修改。
下面是一个相关的DEMO例子:
mc 是一个MovieClip,内嵌名为 txt 的TextField。正常运行时超长的文字会出现滚动,但当执行Resize事件后,txt发生大小发生变化,从输出信息可以看到,scrollH属性不再改变,文字也就不再滚动了,而且maxScrollH的大小也变了。窗口大小与maxScrollH的大小成反比。试了很久发现,把 mc.txt.scrollH += 1;改成mc.txt.scrollH += 2;就可以正常滚动了,但maxScrollH的大小还是变了。现在我还没弄明白是什么原因,估计与字体的大小和像素有关系。晚点再做些测试,找下原因,今天先到这里了。
mc.txt.text = "央行货币研究局前局长景学成表示,要注意的是央行此次的表态已经是“适度”,不会再产生类似09年的天量信贷了。";
mc.addEventListener(Event.ENTER_FRAME, mcEnterHandler);
stage.addEventListener(Event.RESIZE, resizeHandler);
function mcEnterHandler(e:Event):void {
if (mc.txt.scrollH<mc.txt.maxScrollH) {
trace("A: "+ mc.txt.scrollH, mc.txt.maxScrollH);
mc.txt.scrollH += 1;
trace("B: "+ mc.txt.scrollH, mc.txt.maxScrollH);
} else {
mc.txt.scrollH = 0;
}
}
function resizeHandler(e:Event):void {
mc.scaleX = stage.stageWidth/500;
mc.scaleY = stage.stageHeight/400;
}
分享到:
相关推荐
总结来说,AS3滚动文字的实现涉及到ActionScript的基础知识,尤其是`TextField`类的使用,以及通过事件驱动和定时器实现动态滚动效果。理解并掌握这些知识点,可以帮助开发者创建出具有吸引力的动态文本展示。
标题中的“用AS3写的滚动字幕”是指使用ActionScript 3.0,这是一种基于ECMAScript的脚本语言,广泛应用于Adobe Flash Professional和Flex框架中。ActionScript 3.0是Flash Player支持的主要编程语言,它为创建交互...
在AS3中,我们可以利用`TweenLite`或`TweenMax`库(GreenSock Animation Platform)进行平滑的动画控制,也可以使用内置的`Tween`类或者直接操作帧率和时间来实现。 1. **创建文本字段**:在Flash中,我们需要一个`...
在AS3(ActionScript 3)中,我们可以通过创建TextField类的实例来添加文本字段到舞台上。例如: ```actionscript var textField:TextField = new TextField(); textField.text = "这是要滚动的文字"; addChild...
在这个项目中,开发者可能使用了AS3版本,因为AS3是Flash开发中最常用的语言版本,它带来了更强大的性能和更严谨的面向对象编程特性。 描述中提到的文字3D旋转效果,通常会涉及到以下知识点: 1. **3D变换**:在AS...
在提供的压缩文件“okbase.net”中,可能包含实现这种文字滚动效果的源文件,包括FLA和AS文件,通过分析和学习这些源代码,开发者能够更深入地了解ActionScript编程和Flash动画的实现细节。这有助于提升编程技能,...
在“文字滚动例子.fla”中,可以看到项目的完整结构和源代码。 8. **导出为SWF**:完成设计和编程后,通常会将`.fla`文件导出为`.swf`(Shockwave Flash)格式,这是一种可跨平台的富媒体格式,可以在Web浏览器中...
"Flash动态调用文字提示效果"是一个关于使用Adobe Flash技术实现交互式文字提示功能的案例。Flash曾是创建互动内容、动画和用户界面的主流工具,尤其在网页设计领域。这个主题涉及的知识点主要包括以下几个方面: 1...
当`UITextField`位于可滚动视图(如UITableView或UICollectionView)中时,开始编辑时,系统会调整文本视图的高度以容纳键盘,这可能导致文本框内的文字相对于视图的位置发生偏移。同时,`UITextField`的`...
首先,我们要明白UITableView是iOS中用于展示列表数据的核心控件,它可以显示一列或多列数据,并且支持滚动。而UITextField则是用户输入文字的基础组件。结合两者,我们可以在用户点击输入框时,弹出一个UITableView...