欢迎光临
我们一直在努力

arrow flex是什么PopUpMenuButton - AS3 Flex

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

PopUpMenuButton 控件可创建一个 PopUpButton 控件,带有一个主子按钮和一个辅助子按钮。单击辅助(右)子按钮会下拉一个菜单,可通过 dataProvider 属性对其填充。与 Menu 和 MenuBar 控件不同,PopUpMenuButton 控件仅支持单级菜单。这就意味着此菜单不能包含级联子菜单。

PopUpMenuButton 控件的主子按钮表面可以包含文本标签、图标或者同时包含两者。当用户从下拉菜单中选择某个项目或单击 PopUpMenuButton 控件的主按钮时,该控件将调度 itemClick 事件。当用户单击该控件的主按钮时,该控件还会调度 click 事件。您可以自定义 PopUpMenuButton 控件的外观。

PopUpMenuButton 控件具有下列大小特征:

expanded隐藏 MXML 语法

The <mx:PopUpMenuButton> tag inherits all of the tag
attributes of its superclass, and adds the following tag attributes:

  <mx:PopUpMenuButton
    Properties
    dataDescriptor="instance of DefaultDataDescriptor"
    dataProvider="undefined"
    iconField="icon"
    iconFunction="undefined"
    labelField="label"
    labelFunction="undefined"
    showRoot="false|true"
     
    Event
    change=No default
  />
  

查看示例


样式为常见样式,或与特定主题关联。如果为常见样式,则可以用于任何主题。如果样式与特定主题关联,则只有应用程序使用该主题时才能使用该样式。

  样式 说明 由以下参数定义 Class 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

当按钮为 emphasized 时(例如,作为容器的默认按钮时)用作按钮外观的类的名称. String 是
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

设置内部 TextField 的 antiAliasType 属性. String 是
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

设置用于表示 Flex 控件文本的内部 TextField 的 gridFitType 属性. Number 是
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

设置用于表示 Flex 控件文本的内部 TextField 的 sharpness 属性. Number 是
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

设置用于表示 Flex 控件文本的内部 TextField 的 thickness 属性. Number Length 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

labelPlacement 属性设置为 leftright 时,标签和图标之间的间隙. Boolean 是
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

一个布尔值,表示是启用 (true) 还是禁用 (false) 字距调整. String 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

下拉菜单使用的 CSS 样式声明的名称。可以通过此属性控制下拉菜单的外观。默认值将 fontWeight 设置为 normal,并将 textAlign 设置为 left

默认值为 "popUpMenu"。 Number Time 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

在第一个 buttonDown 事件之后,以及相隔每个 repeatInterval 重复一次 buttonDown 事件之前,需要等待的毫秒数. Number Time 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

用户在按钮上按住鼠标时,buttonDown 事件之间相隔的毫秒数. Number Length 否
语言版本: ActionScript 3.0
 产品版本: Flex 3
 运行时版本: Flash9, AIR 1.1

labelPlacement 属性设置为 "top""bottom" 时,按钮的标签和图标之间的间隙.

dataDescriptor:IMenuDataDescriptor

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

数据描述符可以访问并处理数据提供程序中的数据。

如果要将此属性指定为 MXML 中的某个属性,则必须使用对数据描述符的引用,而不是描述符的字符串名称。为该属性使用下列格式:

<mx:PopUpMenuButton id="menubar" dataDescriptor="{new MyCustomDataDescriptor()}"/>

或者,您可以在 MXML 中将该属性指定为嵌套子标签,如下例所示:

<mx:PopUpMenuButton>
      <mx:dataDescriptor>
         <myCustomDataDescriptor>
      </mx:dataDescriptor>
      ...

默认值为 DefaultDataDescriptor 类的内部实例。

    public function get dataDescriptor():IMenuDataDescriptor
    public function set dataDescriptor(value:IMenuDataDescriptor):void

dataProvider:Object

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

popUpMenu 的 DataProvider。

默认值为 null。

此属性可用作数据绑定的源。修改此属性后,将调度 collectionChange 事件。

    public function get dataProvider():Object
    public function set dataProvider(value:Object):void

iconField:String

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

dataProvider Array 中的字段名称,该字段中包含要为每个菜单项显示的图标。iconFunction 属性(如果已设置)将覆盖此属性。

项呈示器在数据提供程序中查找具有指定给 iconField 属性的名称的属性。如果该属性的值是 Class,则它会对该类进行实例化,而且它应为 IFlexDisplayObject 实例。如果该属性的值是字符串,则它会查找以确定应用程序中是否存在具有该名称的 Class 属性。如果在应用程序上找不到属性,则它会在文档上查找具有该名称的属性,并使该属性映射到某个 Class。

如果数据提供程序是一个 E4X XML 对象,则必须显式设置此属性;例如,使用 @icon 指定 icon 属性。

默认值为 "icon"。

此属性可用作数据绑定的源。修改此属性后,将调度 iconFieldChanged 事件。

    public function get iconField():String
    public function set iconField(value:String):void

iconFunction:Function

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

一个函数,用于确定要为每个菜单项显示的图标。如果省略此属性,则 Flex 将使用由 iconField 属性确定的字段内容或属性。如果指定了此属性,则 Flex 将忽略任何 iconField 属性值。

默认情况下,该菜单不会尝试将图标与行中的文本一起显示。但是,通过指定图标函数,您可以为将创建并显示为行中的一个图标的图形指定一个类。

iconFunction 仅采用数据提供程序中的某个项目作为唯一参数,并返回一个类:

默认值为 null。

    public function get iconFunction():Function
    public function set iconFunction(value:Function):void

labelField:String

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

dataProvider Array 中的字段名称,该字段包含要为每个菜单项显示的文本。labelFunction 属性(如果已设置)将覆盖此属性。如果数据提供程序是一个字符串 Array,则 Flex 会将每个字符串值用作标签。如果数据提供程序是一个 E4X XML 对象,则必须显式设置此属性;例如,使用 @label 指定 label 属性。

默认值为 "label"。

此属性可用作数据绑定的源。修改此属性后,将调度 labelFieldChanged 事件。

    public function get labelField():String
    public function set labelField(value:String):void

labelFunction:Function

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

一个函数,用于确定要为每个菜单项显示的文本。如果省略此属性,则 Flex 将使用由 labelField 属性确定的字段内容或属性。如果指定了此属性,则 Flex 将忽略任何 labelField 属性值。

如果指定此属性,则标签函数必须查找一个或多个合适的字段并返回可显示的字符串。labelFunction 属性非常适用于处理格式设置和本地化。

标签函数必须使用 dataProvider 中的项目作为唯一的自变量,并返回一个字符串,如以下示例所示:

labelFunction(item:Object):String

默认值为 null。

    public function get labelFunction():Function
    public function set labelFunction(value:Function):void

popUp:IUIComponent[覆盖]

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

对弹出的 Menu 对象的引用。

此属性是只读的,设置它不会产生任何效果。但可以通过设置 dataProvider 属性实现所需效果。(只写指示符显示在语法摘要中,因为 superclass 中的属性是可读写的,而此类将使用空的实现覆盖 setter。)

    override public function get popUp():IUIComponent
    override public function set popUp(value:IUIComponent):void

showRoot:Boolean

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

指定是显示数据提供程序的一个还是多个顶级节点。如果此属性设置为 false,则该控件将只显示第一个顶级节点的子级节点。其它任何顶级节点都将被忽略。通常,对于顶级节点是文档对象的 E4X 格式的 XML 数据提供程序,需要将此属性设置为 false

默认值为 true。

    public function get showRoot():Boolean
    public function set showRoot(value:Boolean):void

public function PopUpMenuButton()

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

构造函数。

mx.events.MenuEvent
mx.events.MenuEvent.ITEM_CLICK

语言版本:  ActionScript 3.0
产品版本:  Flex 3
运行时版本:  Flash Player 9, AIR 1.1

当用户从弹出菜单中选择项目时调度。

MenuEvent.ITEM_CLICK 事件类型常量指示用户已选择菜单项。

此事件类型的事件对象属性包含以下值。并非所有属性对于各种事件都有意义。有关详细信息,请参阅详细的属性说明。

属性 值 bubbles false cancelable true currentTarget 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 index 选定菜单项在菜单中的索引。 item dataProvider 中选定的项目。 itemRenderer 选定菜单项的 ListItemRenderer。 label 选定菜单项的标签文本。 menu 与此事件关联的特定 Menu 实例;如果 MenuBar 项目正在调度此事件时,则为 nullmenuBar 作为 Menu 控件父项的 MenuBar 实例;如果 Menu 控件不是 MenuBar 控件的子项,则为 nulltarget 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 type MenuEvent.ITEM_CLICK

<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the Halo PopUpMenuButton control. -->
<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">

    <fx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.events.MenuEvent;

            // Event handler, invoked when you select from the menu.
            public function itemClickHandler(evt:MenuEvent):void {
                Alert.show("Menu label: " + evt.label
                    + "  
 menu item index within parent menu: " + evt.index);
            }
        ]]>
    </fx:Script>

    <fx:Declarations>
        <!-- A an data provider in E4X format. -->
        <fx:XMLList id="treeDP2">
            <node label="Inbox"/>
            <node label="Calendar"/>
            <node label="Deleted Items"/>
        </fx:XMLList>
    </fx:Declarations>

    <s:Panel title="Halo PopUpMenuButton Control Example"
            width="75%" height="75%" 
            horizontalCenter="0" verticalCenter="0">
        <s:VGroup left="10" right="10" top="10" bottom="10">
            <s:Label width="100%" color="blue"
                    text="Click the down arrow to open the menu."/>

            <mx:PopUpMenuButton id="p2" 
                    dataProvider="{treeDP2}" 
                    labelField="@label"
                    itemClick="itemClickHandler(event);"/>
        </s:VGroup>
    </s:Panel>

</s:Application>


赞(0)
未经允许不得转载:上海聚慕医疗器械有限公司 » arrow flex是什么PopUpMenuButton - AS3 Flex

登录

找回密码

注册