With a few exceptions (see “MXML tag rules” on page 34), an MXML tag has an optional id property, which must be unique within the MXML file. If a tag has an
id property, you can reference the corresponding object in ActionScript.
In the following example, results from a web-service request are traced in the writeToLog function:
<?xml version="1.0"?>
<!-- mxml/UseIDProperty.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:VBox>
<mx:TextInput id="myText" text="Hello World!" />
<mx:Button id="mybutton" label="Get Weather" click="writeToLog();"/>
</mx:VBox>
<mx:Script>
<![CDATA[
private function writeToLog():void {
trace(myText.text);
}
]]>
</mx:Script>
</mx:Application>
This code causes the MXML compiler to autogenerate a public variable named myText that contains a reference to that TextInput instance. This autogenerated variable lets you access the component instance in ActionScript.
You can explicitly refer to the control’s instance with its
id instance reference in any ActionScript class or . By referring to a component’s instance, you can modify its properties and call its methods.
Because each id value in an MXML file is unique, all objects in a file are part of the same flat namespace. You do not qualify an object by referencing its parent with dot notation, as in myVBox.myText.text.
For more information, see “Referring to Flex components” on page 42.
除少数例外情况(见第34页“MXML标签规则”),一个MXML标签有一个可选的ID属性,此属性值在MXML文件中必须是独一无二的。如果一个标签有ID属性,你可以在ActionScript中引用相应的对象。
在下面的例子,将使用writeToLog功能来记录一个通过网络发来的请求的执行结果:
<?xml version="1.0"?>
<!-- mxml/UseIDProperty.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:VBox>
<mx:TextInput id="myText" text="Hello World!" />
<mx:Button id="mybutton" label="Get Weather" click="writeToLog();"/>
</mx:VBox>
<mx:Script>
<![CDATA[
private function writeToLog():void {
trace(myText.text);
}
]]>
</mx:Script>
</mx:Application>
此代码将使MXML编译器自动生成一个引用TextInput实例的公共变量myText。这种自动生成的变量,让您可以访问在ActionScript中的组件的实例。
您可以在ActionScript类中或脚本块(script block)中明确的使用TextInput控件的Id属性来引用这它的实例,通过引用这一实例,您可以修改其属性和调用它的方法,因为每个MXML文件中的ID值是独一无二的,在一个文件中的所有对象都是同一命名空间的一部分。您通过点号来引用一个对象的父节点,例如myVBox.myText.text。
更多有关信息,请参阅第42页“关于Flex组件”。
分享到:
相关推荐
- 文件名不能与ActionScript类名、组件ID或单词"application"冲突,且不能与mx命名空间中的MXML标签名相同。 - 文件扩展名为小写的".mxml"。 **表示ActionScript类的标签** - MXML标签的命名遵循与ActionScript类...
总之,通过使用 Flex 中的 HTTPService MXML 标签,并设置 `resultFormat` 为 "object",我们可以方便地将远程服务器返回的 XML 数据转换为 ActionScript 对象,简化了数据处理过程,提高了开发效率。这个方法在处理...
### 使用容器和MXML样式的知识点 #### 一、引言 在Flex开发中,容器和MXML样式是非常重要的组成部分,它们能够帮助开发者更高效地管理和美化用户界面。本篇文章将详细解读“使用容器和MXML样式”的核心知识点,包括...
在MXML文件中,可以通过`id`属性为组件指定唯一标识符,便于在ActionScript代码中引用。例如,`tip_txt`是标签的ID,可以在ActionScript中通过`this.tip_txt`访问。 ### 命名空间与组件库 `xmlns:mx`定义的命名...
标题中的“mxml 2.6 源程序及 linux for mipsel 编译好的静态库”指的是一款名为mxml的XML解析库的2.6版本源代码,以及针对MIPSel架构的Linux系统编译出的静态库文件。mxml是一个轻量级的工具,特别适用于资源有限的...
MXML文件中的每一个大写标签都对应一个MXML类的实例,即对象,小写标签则表示对象的属性。 **MXML文档结构** MXML文档遵循XML的结构,包含文档声明、一个根节点以及不同类型的子节点。每个节点按照树形结构展开。...
在MXML文件中,可以通过`<mx:Script>`标签嵌入AS代码,实现逻辑处理和业务逻辑功能。 6. **组件重用**:MXML支持自定义组件,开发者可以创建自己的组件库,然后在多个地方重复使用。这提高了代码的复用性和可维护性...
由于它不依赖外部库,因此非常适合在资源受限的环境中使用。同时,mxml库采用C语言编写,具有良好的跨平台兼容性,可以在多种操作系统上运行。 总的来说,mxml-2.12.tar.gz提供了mxml库的2.12版本,这是一个轻量级...
使用mxmlc命令行工具或者Flex Builder IDE,开发者可以将MXML文件编译成SWF(Shockwave Flash)文件,这个文件可以在Web浏览器中运行,提供丰富的用户体验。 学习和掌握MXML-2.9的关键在于理解其组件模型、事件处理...
XML文档由一系列的元素构成,每个元素包含标签、属性和可能的子元素。解析XML时,首先要读取文档并识别这些元素。Minixml库提供了解析器,可以逐行读取XML文件,解析出元素、属性等信息。 2. **Minixml库的结构** ...
9. **元素与属性的选择**:推荐使用元素而不是属性,因为元素可以构建层次结构,而属性不可以。 10. **元素命名规则**: - 允许使用数字、字母和标点符号。 - 不能以数字或标点符号开头。 - 不能包含“xml”(全...
然而,有时我们可能需要在MXML文件中使用非可视化组件或类,这在创建自定义逻辑或处理数据时非常常见。这篇博客文章“非可视化组件(类)写的mxml中”探讨了如何在MXML上下文中使用非图形化组件,从而实现更复杂的...
在本文中,我们将深入探讨如何在ActionScript 3 (AS3) 和 Flex 框架中使用MXML来调用`.as`文件中的类。Flex是Adobe开发的一个开源框架,用于构建富互联网应用程序(RIA),它结合了MXML和AS3,提供了声明式和编程式...
解析XML时,mxml能够将XML文档转换为内存中的树形结构,每个XML元素和属性都对应于一棵树中的节点。这样的数据结构便于遍历和操作,同时也支持对XML文档的快速查询。在生成XML时,mxml可以将内存中的树结构转换回XML...
在MXML文件中,可以通过 `<fx:Script>` 标签内嵌ActionScript代码,或者在独立的AS文件中编写,然后通过MXML引用。ActionScript提供了面向对象的特性,如类、继承和多态,使得Flex应用程序具有更强的灵活性和可扩展...
这里的`id`属性为按钮分配了一个唯一的标识符,`label`属性设置了按钮的文本,而`click`属性绑定了一个点击事件处理器。 三、ActionScript ActionScript是Flex应用程序的核心编程语言,基于ECMAScript,与...
在本文中,我们将深入探讨mxml库的特性、使用方法以及如何将其整合到你的项目中。 一、mxml库概述 mxml库由Michael J. Meeks开发,它提供了一组简洁的API,使得开发者能够轻松地读取、创建和修改XML文档。尽管功能...
1. **包含头文件**:在C++源文件中引入mxml库的头文件,以便使用库提供的函数和类。 2. **加载XML文件**:使用库提供的函数读取XML文件到内存中的XML树结构。 3. **遍历和操作XML树**:通过DOM模型访问XML节点,进行...
在节点对象模型方面,mxml库提供了诸如元素节点、文本节点、属性节点等多种类型,用于表示XML文档中的各种结构。开发者可以通过API接口操作这些节点,进行添加、删除、查找等操作,构建和修改XML文档。例如,`...
在MXML文件中,你可以声明UI组件(如Button、Label、TextInput等),并设置它们的属性和样式。MXML还可以嵌入ActionScript代码,实现逻辑控制和数据绑定。这种混合编程模型使得开发者能够分离界面设计和业务逻辑,...