定义组件,文件为MyComponents/StateComboBoxSetGet.mxml,其代码如下所示:
1 <?xml version="1.0" encoding="utf-8"?>
2 <mx:ComboBox xmlns:mx="http://www.adobe.com/2006/mxml">
3 <mx:Script>
4 <![CDATA[
5 // 定义私有变量
6 private var stateArrayShort:Array = ["AK", "AL"];
7 private var stateArrayLong:Array = ["Arkansas", "Alaska"];
8 // 定义一个设置属性的变量
9 private var _shortNames:Boolean = true;
10 // 定义设置属性的方法
11 public function set shortNames(val:Boolean):void
12 {
13 // 根据传入参数,设置dataProvider属性
14 _shortNames = val;
15 if (_shortNames)
16 {
17 this.dataProvider = stateArrayShort;
18 }
19 else
20 {
21 this.dataProvider = stateArrayLong;
22 }
23 }
24 // 定义获取属性的方法
25 public function get shortNames():Boolean
26 {
27 return _shortNames;
28 }
29 ]]>
30 </mx:Script>
31 </mx:ComboBox>
32
调用组件,文件为MainPropSetGet.mxml,其代码如下所示:2 <mx:ComboBox xmlns:mx="http://www.adobe.com/2006/mxml">
3 <mx:Script>
4 <![CDATA[
5 // 定义私有变量
6 private var stateArrayShort:Array = ["AK", "AL"];
7 private var stateArrayLong:Array = ["Arkansas", "Alaska"];
8 // 定义一个设置属性的变量
9 private var _shortNames:Boolean = true;
10 // 定义设置属性的方法
11 public function set shortNames(val:Boolean):void
12 {
13 // 根据传入参数,设置dataProvider属性
14 _shortNames = val;
15 if (_shortNames)
16 {
17 this.dataProvider = stateArrayShort;
18 }
19 else
20 {
21 this.dataProvider = stateArrayLong;
22 }
23 }
24 // 定义获取属性的方法
25 public function get shortNames():Boolean
26 {
27 return _shortNames;
28 }
29 ]]>
30 </mx:Script>
31 </mx:ComboBox>
32
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:MyComp="MyComponents.*">
<MyComp:StateComboBoxSetGet id="myStateCB" shortNames="true" />
<mx:Button click="myStateCB.shortNames=!myStateCB.shortNames;"
label="更改列表" />
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:MyComp="MyComponents.*">
<MyComp:StateComboBoxSetGet id="myStateCB" shortNames="true" />
<mx:Button click="myStateCB.shortNames=!myStateCB.shortNames;"
label="更改列表" />
</mx:Application>
总结:
通过set和get关键字可以定义属性。
效果如下所示:
转自:http://www.cnitblog.com/Lalo/archive/2007/12/29/38213.aspx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2009-04-06 .NET生成静态页面并分页
2009-04-06 C#对Microsoft.VisualBasic My对象兰台妙选
2009-04-06 发个原创的ASP.NET小型框架,感兴趣的朋友进来看看吧
2009-04-06 jQuery方法大全