flex中,属性上标记Bindable,在属性变化时能进行数据绑定.
但是在只读的属性上加这标记,则不会起作用.
比如这个页面
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<![CDATA[
private var bar1:int;
private var bar2:int;
private var bar3:int;
[Bindable]
public function get total():int{
return bar1+bar2+bar3;
}
public function crap():void{
bar1=5;
bar2=10;
bar3=1;
}
]]>
</fx:Script>
<s:layout>
<s:HorizontalLayout/>
</s:layout>
<s:Label text="{total}"/>
<s:Button click="crap();"/>
</s:Application>
会提示
只读 getter 上的 [Bindable] 没有必要,因此将会被忽略
因此需要
[Bindable(event="totalChanged")]
public function get total():int{
return bar1+bar2+bar3;
}
public function crap():void{
bar1=5;
bar2=10;
bar3=1;
this.dispatchEvent(newEvent("totalChanged",true,true));
}
这样就能正常工作了.
分享到:
相关推荐
3. getter/setter:对于只读或只写的属性,需要在对应的getter或setter方法前使用`[Bindable]`。但是,如果getter方法内部的逻辑过于复杂,编译器可能会无法确定何时应触发绑定更新。例如: ```actionscript ...
根据给定的信息,本文将详细解释“flex创建的字体属性框”的相关概念和技术要点,包括Flex框架中的字体属性设置、MXML与ActionScript混合编程、数据绑定以及UI组件的运用等。 ### Flex简介 Flex是一种用于构建跨...
在Flex中,要使属性具备数据绑定的能力,通常需要在属性声明前添加`[Bindable]`元数据标签。例如: ```actionscript [Bindable] private var ss:String = "aaa"; ``` 如果没有指定触发绑定的特定事件(如`...
若希望某个对象作为数据绑定的源,需在其属性前加上`[Bindable]`或`[Bindable("eventname")]`标记,确保属性变化时能触发数据绑定事件。 综上所述,Flex4.5提供了丰富的工具和机制,帮助开发者构建高性能、高互动性...
[Bindable] public function callFromJS():void { // 方法体 } ``` 在HTML中,可以这样调用: ```javascript var app = document.getElementById('myFlexApp'); app.callFromJS(); ``` 3. **事件处理**:...
Flex 4的生命周期改进也体现在事件处理和元数据的使用上,例如` IOErrorEvent`和`StatusEvent`等事件,以及`[Bindable]`、`[SkinPart]`等元数据,这些都增强了组件与外部数据的交互和皮肤的自定义。 尽管Adobe提供...
### Flex学习心得与关键知识点详解 #### 一、Flex组件模型 Flex采用了基于组件的开发模型,这使得开发者可以通过继承现有组件并扩展其功能来...为了使对象能够作为数据绑定的源,需要在其属性前添加`[Bindable]`注解。
- **动态的数据展现源于灵活的数据绑定**:介绍了数据绑定的基本概念,包括绑定表达式、[Bindable]符号、`<mx:Binding>`标签、BindingUtils和自定义数据绑定。 - **使用样式(style)和皮肤(Skin)两大画笔为应用程序...
这里,`Bindable`注解表示该类的属性变化时,将会触发UI的更新,使得视图能够实时反映模型的变化。而`RemoteClass`注解则指定了与后端对应的实体类名,便于Flex框架自动完成序列化和反序列化的操作。 #### 后台Java...
这个类通常会扩展Flex的基类,如`EventDispatcher`或`UIComponent`,并包含一些公开的可绑定属性。例如: ```actionscript public class CustomClass extends EventDispatcher { [Bindable] public var ...
[Bindable] private var count:int = 0; protected function button_clickHandler(event:MouseEvent):void { count++; label.text = count.toString(); } ]]> (event)" /> ``` - **函数声明**:在...
此外,还增加了 Bindable、Observer 和 Bindable Event 等元数据,让数据绑定更加灵活和强大。 5. **MXML改进**:MXML作为Flex的声明式语言,在Flex4中变得更加强大。它可以用来定义组件、事件处理函数甚至...
3. **数据绑定**:在自定义渲染器中,我们可以利用Flex的数据绑定功能,将Image组件的source属性与数据源的某个字段绑定。这样,当数据源发生变化时,图标会自动更新。例如,如果root对象有一个名为`iconUrl`的字段...
在Flex4中,这一特性主要体现在MXML和ActionScript的结合上,使得开发者可以更直观地定义用户界面(UI)组件及其属性,而无需编写复杂的事件处理代码。这一变化大大简化了UI构建过程,使开发者能够专注于业务逻辑的...
- 设置DataGrid的`dataProvider`属性为创建的数据源。 - 使用PagingNavigator或自定义导航组件来控制分页,这包括“上一页”、“下一页”、“第一页”和“最后一页”的按钮。 - 实现分页逻辑,根据当前页数和每页...
当我们使用`[Bindable]`元数据标签标记一个类的成员变量时,Flex编译器会自动为这个变量生成相关的访问器(getter和setter)。例如,在提供的代码段中,`list`变量被标记为`[Bindable]`: ```actionscript public ...
- **[Bindable] 注解**:使对象属性改变时能够触发事件。 #### 五、Flex与Java交互过程 1. **建立连接**:通过AMF(Action Message Format)协议建立Flex客户端与Java服务器之间的连接。 2. **发送请求**:Flex...
`defaultLeafIcon`、`folderOpenIcon`和`folderClosedIcon`属性分别设置叶子节点、打开和关闭状态下的图标。 #### 二、动态图表的构建 动态图表通常基于树形结构的数据进行实时更新或交互式操作。例如,可以通过...
`creationComplete="initTreeData()"` 这个属性表示在Flex应用程序初始化完成后调用`initTreeData()`函数来加载初始数据。在`initTreeData()`函数中,通过`FunService`服务类获取数据,并填充到`treeSiteList`组件中...