FLEX4 相对 FLEX3的组件变化列表中列出以这么一项:
mx.controls.ComboBox -> spark.components.DropDownList
官方解释如下:
ComboBox 控件是 DropDownListBase 控件的子类。与 DropDownListBase 控件类似,当用户从 ComboBox 控件的下拉列表中选择某项时,数据项将显示在控件的提示区域中。
这两个控件之间的一个区别是,ComboBox 控件的提示区域是使用 TextInput 控件实现的,而 DropDownList 控件是通过 Label 控件实现的。因此,用户可以编辑控件的提示区域,以输入非预定义选项之一的值。
例如,DropDownList 控件仅允许用户从控件的预定义项列表中进行选择。ComboBox 控件允许用户既可以从预定义项中选择,也可以在提示区域中输入新项。您的应用程序可以识别已输入一个新项,(可选)并将其添加到控件的项列表中。
ComboBox 控件还可以当用户在提示区域中输入字符时搜索项列表。当用户输入字符时,将打开控件的下拉区域,然后滚动到项列表中最接近的匹配项并加亮。
今天在测试使用<s:ComboBox dataProvider="{provider}" labelField="label"/>时发现编译没报错,但运行后却始终也显示不出控件。上网搜了一下,发现原来控件被替换了。
针对FLEX3中ComboBox的用法,在FLEX4中应改成以下用法:
<s:DropDownList dataProvider="{provider}" labelField="label"/>
或
<mx:ComboBox dataProvider="{provider}" labelField="label"/>
需要注意的是:
1)DropDownList的DataProvider不能是Array类型的
2)DropDownList默认显示时与ComboBox不一样,需要手动指定 selectedIndex的值
下面给出一段示例:
<?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" creationComplete="init()">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<fx:Array id="queryField">
<fx:Object dataField="requestStatuId" headerText="RequestId"/>
<fx:Object dataField="executeName" headerText="ExecuteName"/>
<fx:Object dataField="executeCode" headerText="ExecuteCode"/>
</fx:Array>
<s:ArrayList id="queryField1">
<fx:Object dataField="requestStatuId" headerText="RequestId"/>
<fx:Object dataField="executeName" headerText="ExecuteName"/>
<fx:Object dataField="executeCode" headerText="ExecuteCode"/>
</s:ArrayList>
</fx:Declarations>
<s:Panel x="448" y="159" width="250" height="200">
<mx:ComboBox x="73" y="10" dataProvider="{queryField}" labelField="headerText" selectedIndex="0"/>
<s:DropDownList x="73" y="50" dataProvider="{queryField1}" labelField="headerText" selectedIndex="0"/>
</s:Panel>
</s:Application>
分享到:
相关推荐
在Spark框架中,DropDownList和ComboBox是两种常用的下拉选择组件。它们在用户界面设计中扮演着重要角色,提供了一种简洁的方式让用户从预定义的选项中进行选择。本篇文章将详细探讨如何实现这两种组件的滑动弹入弹...
在Flex中,我们可以利用两种主要的组件来实现这样的功能:ComboBox和DropDownList。这两种组件都是用户界面交互的重要元素,允许用户从一组预定义的选项中进行选择。 ComboBox是一种组合输入框和下拉列表的控件,...
`combobox`与`dropdownlist`相似,但通常包含额外的功能,如搜索过滤、分组、多选等。在多选下拉框中,`checkbox`扮演了关键角色。`checkbox`是一种复选框,允许用户从一组选项中选择多个。结合`flex`布局,我们可以...
此外,为了实现下拉框的效果,他们可能使用了`mx.controls.DropDownList`或者`spark.components.ComboBox`,并在其`dataProvider`属性中设置了`Tree`控件,以展示树形结构的选项。 `GroupXML.xml`文件作为数据源,...
VScrollBar | HSlider | VSlider | DropDownList | TextArea | TextInput | ComboBox | List NumericStepper | Spinner | Panel | BorderContainer | TitleWindow | VideoPlayer | DataGrid mx包含组件: Accordion...
VSCode的Flex代码段 快速创建MX和Spark组件。 如何使用 在VSCode中安装扩展 打开mxml文件,开始输入组件名称并... DropDownList Ellipse MX Form Spark Form Group HBox HGroup HorizontalLayout HTTPService
然而,在Flex中,数据绑定涉及到组件与数据源的交互。对于`ComboBox`和`.DropDownList`,它们的`dataProvider`属性用于绑定数据。`ComboBox`允许`dataProvider`为`Object`类型,因为它可以处理多种数据类型,如`...
为了在`DataGrid` 的某一列实现下拉列表,我们需要创建一个新的组件类,继承自`mx.controls.ComboBox` 或 `spark.components.DropDownList`,然后根据需求进行定制。这可能包括调整样式、添加事件监听器、处理特定的...
5. **ComboBox & DropDownList (组合框)**: 前缀`cbo`,如`cboEnglish`。 6. **Communications (通信控件)**: 前缀`com`,如`comFax`。 7. **ContextMenu (上下文菜单)**: 前缀`ctxmnu`,如`ctxmnuEdit`. 8. **...
4. **ADO 数据 (ADOData)** - **命名前缀:** `ado` - **示例:** `adoBiblio` - **解释:** ADO(ActiveX Data Objects)是一种数据访问技术。如果使用ADO来处理图书馆资料,则可以将控件命名为`adoBiblio`。 5....