Flash组件开发研究(2):显示文章内容
2009-04-18 23:47
337 查看
package { import flash.display.MovieClip; import flash.events.*; import flash.display.SimpleButton; import flash.text.*; public class TextBox extends MovieClip { public var message:TextField;//显示文本消息 public var closeBtn:MovieClip;//关闭按钮 private var format:TextFormat;//文本格式 public function TextBox(Width:Number=500,Height:Number=280) { //文本框大小 format=new TextFormat(); format.color=0x000000;//默认颜色 format.size=15; //默认文本大小 message=new TextField(); message.width=Width; message.height=Height; message.border=true; message.multiline=true;//设置多行 message.wordWrap=true; message.setTextFormat(format); addChild(message); closeBtn=new MovieClip(); var closetxt:TextField=new TextField(); closetxt.text="CLOSE"; closeBtn.addChild(closetxt);//创建一个Close的按钮 addChild(closeBtn); closeBtn.addEventListener(MouseEvent.CLICK,onClick);//对这个按钮进行监听 closeBtn.x=0; closeBtn.y=Height+20; } public function setTextBoxFormat(format:TextFormat,txt:TextField):void { txt.setTextFormat(format);//设置文本格式 } private function onClick(event:MouseEvent):void { this.visible=false; this.dispatchEvent(new Event("Close"));//分派close事件,自定义事件 } } }
这一次,我们会制作一个TextBox,和文本TextArea 差不多,只是我们增加多一个按钮,按钮带一个分派事件Close事件。
这个close事件目的是关闭我们的文本。在第一个组件开发研究《1》里面制作了一简单的显示新闻文章列表,这里没有解决我们的问题点击了标题后,如何去进入文本。
看一下xml文件:
<item type="news">
<title>提倡环保</title>
<contect>
<![CDATA[欢迎参与这一次的活动日 adobe公司举办的技术开发日 ]]>
</contect>
<date>2009-4-17</date>
</item>
在这个xml里面,有title标签,这个标签用于填充我们的title文本,date用于填充我们的date文本这个属性当中。当中contect内容,在我们点击后,并没有能够显示出来 。
为了解决这个问题,我们设计一个类,包括message的文本信息。
测试:下面的文档,把他放在时间轴里面测试
var xmlManager:XMLManager=new XMLManager(); xmlManager.LoadXML("New.XML"); xmlManager.addEventListener(LoadEvent.LOADXML,completehandler); var box:TextBox=new TextBox();//创建TextBox类 box.x=95; box.y=150; box.addEventListener("Close",closeHandler);//监听close事件 var textcontain:MovieClip=new MovieClip(); function completehandler(event:LoadEvent):void { var xml:XML=event.result; var xmllist:XMLList=xml.item; for (var i:uint=0; i<xmllist.length(); i++) { var news:NewList=new NewList(); news.addEventListener(TextEvent.LINK,clickhandler); news.x=100; news.y=130+25*i; news.title.text=xmllist.title[i]; news.date.text=xmllist.date[i]; news.content.text=xmllist.contect[i]; textcontain.addChild(news);//文本容器,用于隐藏的时候一次性隐藏 } addChild(textcontain); } function clickhandler(event:TextEvent):void { textcontain.visible=false; box.visible=true; box.message.text=event.text; addChild(box); } function closeHandler(event:Event):void { box.visible=false; textcontain.visible=true; }
相关文章推荐
- Flash组件开发研究(2):显示文章内容
- Flash组件开发研究(2):显示文章内容
- 网站开发(十三)首页文章循环显示和显示文章内容
- Android开发_WebView组件使用详解_LoadUrl直接显示网页内容
- Flash组件开发研究(1):简单的新闻列表
- Android开发_WebView组件使用详解_LoadUrl直接显示网页内容
- Flash CS3组件开发图文教程
- iPhone开发--UIScrollView默认显示第二页的内容
- asp.net 文章内容分页显示的代码
- 获取远程文章内容时,显示图片的两种方式
- asp.net控件开发(一)-显示控件内容
- 安卓开发-代码设置内容居中显示,设置
- iOS开发- TableView不显示没内容的Cell
- Ext.form.DisplayField扩展组件:在formpanel中显示html格式的内容
- asp.net 控件开发(一)---显示控件内容
- 软件系统开发中的组件框架技术研究、设计和应用
- IOS开发之自动布局显示网络请求内容
- iphone开发中文章显示的一种排版技术
- Android腾讯微博客户端开发六:给用户加VIP认证以及美化微博显示内容
- 推荐一些flash和asp.net结合开发的文章