Flex自定义组件 之 使用MXML标签定义
2008-09-27 11:51
477 查看
主文件Main1.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:MyComp="*" layout="vertical">
<mx:Style>
Application{fontSize:14px;}
</mx:Style>
<MyComp:MyComp1/>
</mx:Application>
注:xmlns:MyComp="*"自定义命名空间其实很类似于包的概念用来管理组件的。实际当中最好把自己的组件文件分文件夹管理。
组件定义MyComp1.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300">
<mx:Script>
<![CDATA[
import mx.controls.ComboBox;
import mx.controls.Alert;
import mx.events.DropdownEvent;
private function closeHandler(event:DropdownEvent):void
{
//Alert.show((event.currentTarget as ComboBox).selectedLabel);
Alert.show((event.currentTarget as ComboBox).selectedItem.toString());
}
]]>
</mx:Script>
<mx:Label text="城市:" />
<mx:ComboBox close="closeHandler(event);">
<mx:dataProvider>
<mx:String>济南</mx:String>
<mx:String>威海</mx:String>
<mx:String>烟台</mx:String>
</mx:dataProvider>
</mx:ComboBox>
</mx:HBox>
注:组件的文件名就对应着将来使用时的mxml标签名,根标签就是你用来扩展的父类,这里是HBox。在里面this引用的是你的组件类。
结果:
实际中可能更复杂,自定义组件里面嵌套使用另外的自定义组件情况有可能。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:MyComp="*" layout="vertical">
<mx:Style>
Application{fontSize:14px;}
</mx:Style>
<MyComp:MyComp1/>
</mx:Application>
注:xmlns:MyComp="*"自定义命名空间其实很类似于包的概念用来管理组件的。实际当中最好把自己的组件文件分文件夹管理。
组件定义MyComp1.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300">
<mx:Script>
<![CDATA[
import mx.controls.ComboBox;
import mx.controls.Alert;
import mx.events.DropdownEvent;
private function closeHandler(event:DropdownEvent):void
{
//Alert.show((event.currentTarget as ComboBox).selectedLabel);
Alert.show((event.currentTarget as ComboBox).selectedItem.toString());
}
]]>
</mx:Script>
<mx:Label text="城市:" />
<mx:ComboBox close="closeHandler(event);">
<mx:dataProvider>
<mx:String>济南</mx:String>
<mx:String>威海</mx:String>
<mx:String>烟台</mx:String>
</mx:dataProvider>
</mx:ComboBox>
</mx:HBox>
注:组件的文件名就对应着将来使用时的mxml标签名,根标签就是你用来扩展的父类,这里是HBox。在里面this引用的是你的组件类。
结果:
实际中可能更复杂,自定义组件里面嵌套使用另外的自定义组件情况有可能。
相关文章推荐
- 自定义flex组件使用标签方式添加子组件
- Flex自定义组件 之 使用AS3定义
- Flex自定义组件和mxml默认组件混合使用
- 解决办法:Flex4使用Efflex_v0.03.swc (Fx4/FP10),在该命名空间中多次定义了组件 MotionPath……
- flash/flex 之 自定义MXML组件
- Flex 3快速入门: 构建自定义组件 在 MXML 中构建组件
- flex自定义组件(mxml文件)
- Flex企业应用开发实践学习笔记(六)——使用ActionScript创建自定义组件
- Flex 3快速入门: 构建自定义组件 使用代码分离构建自定义组件
- flex自定义组件(mxml文件)
- List 中使用 MXML 自定义组件的数据项访问方法
- 使用 tag 文件定义自定义标签
- Flex 3入门教程: 使用代码分离构建自定义组件
- 六、 Flex中自定义组件的使用
- 自定义Flex4+的Spark组件part1:使用ActionScript3开发Spark组件Component类
- Flex 3在MXML中构建自定义组件
- React组件自定义属性的定义及使用
- 使用 tag 文件定义自定义标签
- Lightning 组件内容多语言与自定义标签按规则使用
- 定义新的标签类型,应该使用自定义roleType,还是自定义arcroleType?