Flash组件开发研究(2):显示文章内容

<textarea cols="50" rows="15" name="code" class="c-sharp">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事件,自定义事件 } } }</textarea>

 

 

这一次,我们会制作一个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的文本信息。

 

测试:下面的文档,把他放在时间轴里面测试

 

<textarea cols="50" rows="15" name="code" class="c-sharp">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&lt;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; }</textarea>

 

 

 Flash组件开发研究(2):显示文章内容_第1张图片

 

你可能感兴趣的:(Date,xml,function,Flash,import,textbox)