登录
注册
程序人生
个人空间
个人相册
帮助
界面
简洁版本
拼吾爱程序人生
其他编程
Flex
Flex学习笔记(二)
Web
www.pin5i.com
输入您的搜索字词
提交搜索表单
.Net编程
Asp.Net
C#
ADO.Net
Visual Studio.NET
Silverlight
F#
WCF
WPF
Linq
WF
其他编程
Java
Ajax
javascript
正则表达式
XML
Web Service
C & C++
Ruby & Python
Flex
PHP
数据库编程
SQL
SQL Server
Oracle
DB2
MySQL
Other DB
编程应用
软件测试
应用系统
SEO
Google Adsense
建站软件
程序人生
程序人生
社区管理
网站事务
公益活动
1
/ 1 页
1
跳转
页
查看:
617
Flex学习笔记(二)
cobra
striver
个人空间
相册
性别:
来自:
拼吾爱
积分:
7097
帖子:
7009
注册:
2007-04-09
2008-08-06 00:28
|
只看楼主
树型
|
收藏
|
小
中
大
复制帖子链接到剪贴板
1F
Flex学习笔记(二)
Flex页面布局(容器类和导航类) Part.1
回顾上一章《 Flex学习笔记(一) 》
Flex超炫的视觉效果,相信很多人都为之震撼。因此页面布局就就成为程序开发中重要的一个环节。它直接决定了程序的成败。
刚开始学习这一块儿的时候,在脑中闪现出以前学习Swing时郁闷的场景。呵呵,这次让我们换一种学习方法,用实例来学习,这样不会空洞的只剩下长篇的理论,也不会枯燥的让我们想睡觉。
1)ApplicationControlBar
对于ApplicationControlBar,我们需要注意的是dock这个属性。
Dock是决定ApplicationControlBar的位置,默认为false。
当dock=true,ApplicationControlBar将始终显示在窗口的顶部,并且自动缩放,适应窗口大小。
当dock=false,它的位置可以随意设定。
Code
[copy to clipboard]
CODE:
1<?xml version="1.0" encoding="utf-8"?>
2<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">
3 <mx:ApplicationControlBar dock="true">
4 <mx:Label text="dock=true"/>
5 <mx:MenuBar labelField="@label">
6 <mx:XMLList>
7 <item label="Country Name">
8 <node label = "China"/>
9 <node label = "America"/>
10 </item>
11 <item label="City Name">
12 <node label = "BeiJing"/>
13 <node label = "QingDao"/>
14 </item>
15 </mx:XMLList>
16 </mx:MenuBar>
17 </mx:ApplicationControlBar>
18 <mx:Label text="这个ApplicationControlBar的dock属性设置成了true,所以它永远显示在窗口的最顶端" y="10"/>
19 <mx:ApplicationControlBar x="66" y="111" width="322">
20 <mx:Label text="dock=false"/>
21 </mx:ApplicationControlBar>
22 <mx:Label text="默认的情况下dock的属性值为false,所以它可以出现在程序的任何地方" y="152" x="10"/>
23</mx:Application>
Flex效果:
http://www.blogjava.net//images/blogjava_net/alps/ApplicationControlBar.swf
2)Accordion
这个是一个可以收缩的导航控件。
这个我们可以了解一下Accordion的selectedIndex和selectedChild两个属性。
selectedIndex:元素的索引号
selectedChid:元素的ID
Code
[copy to clipboard]
CODE:
1<?xml version="1.0" encoding="utf-8"?>
2<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">
3<mx:Accordion id="simple" x="10" y="10">
4 <mx:Panel label="Choose panel1" id="p1">
5 <mx:Label text="This is Panel1"/>
6 </mx:Panel>
7 <mx:Panel label="Choose panel2" id="p2">
8 <mx:Label text="This is panel2"/>
9 </mx:Panel>
10 <mx:Panel label="Choose panel3" id="p3">
11 <mx:Label text="This is panel3"/>
12 </mx:Panel>
13 </mx:Accordion>
14 <mx:HBox x="10" y="169">
15 <mx:Label text="通过selectedIndex访问"/>
16 <mx:Button label="Show Panel1" click="simple.selectedIndex=0"/>
17 <mx:Button label="Show Panel2" click="simple.selectedIndex=1"/>
18 <mx:Button label="Show Panel3" click="simple.selectedIndex=2"/>
19 </mx:HBox>
20 <mx:HBox y="215" x="10">
21 <mx:Label text="通过selectedChild访问"/>
22 <mx:Button label="Show Panel1" click="simple.selectedChild=p1" x="10" y="201"/>
23 <mx:Button label="Show Panel2" click="simple.selectedChild=p2" x="10" y="201"/>
24 <mx:Button label="Show Panel3" click="simple.selectedChild=p3" x="10" y="201"/>
25 </mx:HBox>
26</mx:Application>
Flex效果:
http://www.blogjava.net//images/blogjava_net/alps/AccordionSimple.swf
3)Box、HBox、VBox
HBox和VBox是Box的子类,HBox为水平分布,VBox为垂直分布
Box通过设置direction的属性,可以达到HBox,或者VBox的效果。
Box的direction="horizontal",相当于HBox
Box的direction="vertical",相当于VBox
Code
[copy to clipboard]
CODE:
1<?xml version="1.0" encoding="utf-8"?>
2<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">
3<mx:Panel height="80%" width="80%" paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">
4 <mx:VDividedBox width="80%" height="80%">
5 <mx:Panel width="80%" height="40%">
6 <mx:Box direction="horizontal" borderStyle="solid">
7 <mx:Label text="box的direction=horizontal"/>
8 <mx:Label text="这是水平分布,相当于HBox"/>
9 <mx:Button label="Button"/>
10 </mx:Box>
11
12 <mx:Box direction="vertical" borderStyle="solid">
13 <mx:Label text="box的direction=vertical"/>
14 <mx:Label text="这是垂直分布,相当于VBox"/>
15 <mx:Button label="Button"/>
16 </mx:Box>
17 </mx:Panel>
18
19 <mx:Panel width="80%" height="40%">
20 <mx:HBox borderStyle="solid">
21 <mx:Label text="HBox,是水平分布"/>
22 <mx:Label text="相当于Box的direction=horizontal"/>
23 <mx:Button label="Button"/>
24 </mx:HBox>
25 <mx:VBox borderStyle="solid">
26 <mx:Label text="VBox,是垂直分布"/>
27 <mx:Label text="相当于Box的direction=vertical"/>
28 <mx:Button label="Button"/>
29 </mx:VBox>
30 </mx:Panel>
31 </mx:VDividedBox>
32 </mx:Panel>
33</mx:Application>
Flex效果:
http://www.blogjava.net/images/blogjava_net/alps/BoxSimple.swf
4)DividedBox、HDividedBox、VDividedBox
HDividedBox和VDividedBox是DividedBox的子类,HDividedBox为水平分布,VDividedBox为垂直分布
DividedBox通过设置direction的属性,可以达到HDividedBox,或者VDividedBox的效果。
DividedBox的direction="horizontal",相当于HDividedBox
DividedBox的direction="vertical",相当于VDividedBox
需要注意的一点是有个liveDragging属性,
liveDragging=true的时候,元素在拖动的时候就会不断的调整位置。
liveDragging=false的时候,元素只有在鼠标松开的时候才调整位置。默认的情况是false。
Code
[copy to clipboard]
CODE:
1<?xml version="1.0" encoding="utf-8"?>
2<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12">
3<mx:VDividedBox width="100%" height="100%">
4 <mx:HDividedBox width="100%" height="50%">
5 <mx:Label text="这是DividedBox"/>
6 <mx:Canvas width="40%" height="100%" >
7 <mx:DividedBox direction="horizontal" width="100%" height="100%" liveDragging="true">
8 <mx:Panel height="100%" width="50%" >
9 <mx:Label text="liveDragging=true"/>
10 <mx:Label text="direction=horizontal"/>
11 </mx:Panel>
12 <mx:Panel height="100%" width="50%">
13 <mx:Label text="direction=horizontal"/>
14 </mx:Panel>
15 </mx:DividedBox>
16 </mx:Canvas>
17 <mx:Canvas width="40%" height="100%">
18 <mx:DividedBox direction="vertical" width="100%" height="100%" x="10" liveDragging="false">
19 <mx:Panel height="50%" width="100%">
20 <mx:Label text="liveDragging=false"/>
21 <mx:Label text="direction=vertical"/>
22 </mx:Panel>
23 <mx:Panel height="50%" width="100%">
24 <mx:Label text="direction=vertical"/>
25 </mx:Panel>
26 </mx:DividedBox>
27 </mx:Canvas>
28 </mx:HDividedBox>
29
30 <mx:HDividedBox width="100%" height="50%">
31 <mx:HBox width="40%" height="100%">
32 <mx:Label text="这是HDividedBox"/>
33 <mx:HDividedBox width="100%" height="100%" liveDragging="true">
34 <mx:Panel height="100%" width="50%">
35 <mx:Label text="liveDragging=true"/>
36 </mx:Panel>
37 <mx:Panel height="100%" width="50%"/>
38 </mx:HDividedBox>
39 </mx:HBox>
40 <mx:HBox width="40%" height="100%" >
41 <mx:Label text="这是VDividedBox"/>
42 <mx:VDividedBox width="100%" height="100%" liveDragging="false">
43 <mx:Panel height="50%" width="100%">
44 <mx:Label text="liveDragging=false"/>
45 </mx:Panel>
46 <mx:Panel height="50%" width="100%"/>
47 </mx:VDividedBox>
48 </mx:HBox>
49 </mx:HDividedBox>
50</mx:VDividedBox>
51</mx:Application>
Flex效果:
http://www.blogjava.net/images/blogjava_net/alps/DividedBoxSimple.swf
这块内容太多,所以决定分两张帖子,在下一个章中将会给大家提供一个综合所讲实例的explorer,希望对大家的学习有帮助。
(文/alps 出处/blogjava)
感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
您可能对 [Flex] 的这些文章也感兴趣:
Flex学习笔记(一)
针对Flex Server集成的X2O框架
Flex学习笔记(二)
Delphi模拟的熊猫烧香病毒核心源码
Flex学习笔记(三)
flex3 Grid获取jsp数据的简单应用
Delphi实现屏幕抓图
FLEX是什么及与FLASH的关系
Flex与ASP.NET通过Remoting方式进行通讯
Flex学习笔记(五)
发送短消息
查看公共资料
查找该会员全部帖子
UID:
1
精华:
10
威望:
38
金钱:
1491.55 拼元
状态:
离线
28688028
<<
上一主题
|
下一主题
>>
1
/ 1 页
1
跳转
页
快速回复帖子
标题
禁用 URL 识别
禁用表情
禁用 Discuz!NT 代码
使用个人签名
default
正在加载表情...
[完成后可按 Ctrl+Enter 无刷新发布]
论坛跳转...
.Net编程
Asp.Net
C#
ADO.Net
Visual Studio.NET
Silverlight
F#
WCF
WPF
Linq
WF
其他编程
Java
Eclipse
Spring
EJB
Ajax
ExtJS
Dojo
javascript
jQuery
正则表达式
XML
Web Service
C & C++
Ruby & Python
Flex
PHP
数据库编程
SQL
SQL Server
Oracle
DB2
MySQL
Other DB
编程应用
软件测试
应用系统
SEO
Google Adsense
建站软件
程序人生
程序人生
社区管理
网站事务
公益活动
管理团队
回收站
下载权限不够?五招教你快速提升权限。。。
我的主题
我的帖子
我的精华
我的空间
我的相册
帖子标题
空间日志
相册标题
作 者
我的主题
我的帖子
我的附件
我的精华
我的空间
我的相册