- <?xml version="1.0" encoding="utf-8"?>
- <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
- applicationComplete="init()"
- showFlexChrome="false"
- alwaysInFront="true"
- width="500"
- height="500">
- <mx:Style source="View.css"/>
- <mx:Script>
- <![CDATA[
- import mx.controls.Alert;
- private function init():void
- {
- hp.send();
- }
-
- public function LinkTOURL():void
- {
- try{
- navigateToURL(new URLRequest(dg.selectedItem.link));
- }
- catch(e:Error)
- {
- Alert.show("发生错误了");
- }
- }
-
- ]]>
- </mx:Script>
- <mx:HTTPService id="hp" url="http://www.people.com.cn/rss/politics.xml"
- useProxy="false"/>
- <mx:Panel title="Rss Reader" layout="absolute" horizontalCenter="0" verticalCenter="-13" width="443" height="421">
- <mx:DataGrid id="dg" x="0" y="0" width="423" height="300" dataProvider="{hp.lastResult.rss.channel.item}" >
- <mx:columns>
- <mx:DataGridColumn headerText="title" dataField="title" width="390" />
- <mx:DataGridColumn width="53">
- <mx:itemRenderer >
- <mx:Component>
- <mx:VBox>
- <mx:LinkButton label="Look" click="this.parentDocument.LinkTOURL()"/>
- </mx:VBox>
- </mx:Component>
- </mx:itemRenderer>
- </mx:DataGridColumn>
-
- </mx:columns>
- </mx:DataGrid>
- <mx:Button x="313" y="328.65" label="AddLink" width="100" height="27.933334"/>
- <mx:TextInput x="43" y="331.65" width="262"/>
- <mx:Label x="10" y="333.65" text="Rss"/>
- </mx:Panel>
- </mx:WindowedApplication>
制作过程:
第一步:新建一个project 为Ai r , 选择服务器技术为none 创建好文件后就尝试添加我们所需要的组件
DataGrip pannel 等容器
制作原理:使用RPC远程调用功能访问Rss的XMl文件。
- <mx:HTTPService id="hp" url="http://www.people.com.cn/rss/politics.xml"
- useProxy="false"/>
其中url是我们可以尝试修改的这里选择一个人民网 rss的新闻阅读,如果感兴趣的可以修改这个网址尝试自己喜欢的阅读订阅。
注意:为了使用窗口透明 和风格变化,还要修改配置文件xml文件
找到 systemChrome 和transparent 这两项
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
<systemChrome>none</systemChrome>
<!-- Whether the window is transparent. Only applicable when systemChrome is false. Optional. Default false. -->
<transparent>true</transparent>
修改默认的窗口风格,和显示透明化。这样就可以实现的透明化效果
功能扩展:为了使功能更加的强大这里还可以尝试大胆改造
如添加更加多的阅读标签;更加多的样式风格。以及 效果
如果要其100%透明还需要修改
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
applicationComplete="init()"
showFlexChrome="false"
alwaysInFront="true" >
增加两个项
showFlexChrome="false"
alwaysInFront="true" >
这样就能实现完全透明
但是实现透明化的一个问题,也会存在的,例如没有了拖动,这样就要我们添加拖动等一些行为。
为使Pannel可以拖动这样我们可以加入鼠标事件,以及 this.stage.nativeWindow.startMove();这个类的方法
- private function init():void
- {
- hp.send();
- mypanel.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
- }
import flash.display.NativeWindow;
- private function onMouseDown(event:MouseEvent):void
- {
- this.stage.nativeWindow.startMove();
- }
注意:即使拖动了,但是里面一些容器也会产生一些我们不想要的效果,如滚动条也一直拖动来。我们希望的是只是pannel 上面拖动但是这样的效果还是没有实现到
为了使拖动正常操作,我们可以现在拖动一些区间。不让其全部拖动,所以可以限制区间
如
if(y>n && y<m)
{
this.stage.nativeWindow.startMove();
}
这样就可以实现区间的拖动减少一写麻烦
可以尝试一下这个效果 功能还可以增强。接下来就是导出-》 尝试一下安装看看自己做的rss 爽不爽