Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   flex4 List ItemRenderer (http://www.flasher.ru/forum/showthread.php?t=158408)

jaa_breath 19.06.2011 16:02

flex4 List ItemRenderer
 
имеется свой ItemRenderer для List,
Код AS3:

<s:ItemRenderer name="PageListItemRenderer" height="30" height.showMenu="50" width="153"
                color.hovered="black" color.normal="white"
                xmlns="http://ns.adobe.com/mxml/2009"
                xmlns:s="library://ns.adobe.com/flex/spark"
                xmlns:mx="library://ns.adobe.com/flex/mx"
                autoDrawBackground="false">
...
 
        private function hideShowMenu():void {
            if (currentState == "selected") {
                currentState = "showMenu";
            }
        }
 
    <s:states>
        <s:State name="normal"/>
        <s:State name="hovered"/>
        <s:State name="selected"/>
        <s:State name="showMenu"/>
    </s:states>
 
основое состояние
 
    <s:HGroup width="120" paddingTop="6" excludeFrom="showMenu">
        <s:BitmapImage source="@Embed('/skin/ico/page.png')"
                      verticalCenter="0"/>
 
        <s:Label text="{data.name}" paddingTop="4"
                width="100%"
                maxDisplayedLines="1"
                showTruncationTip="true"/>
    </s:HGroup>
 
    <s:Button click="hideShowMenu()" skinClass="skin.ArrowButtonSkin" left="130" top="12" buttonMode="true"
              icon.normal="@Embed('/skin/ico/arrow.png')"
              icon="@Embed('/skin/ico/arrow_active.png')"/>

при нажатии на button, item переходит в состояние showMenu,
то есть на месте item`a появляется меню.

Код AS3:

    <s:VGroup id="showMenu" includeIn="showMenu" paddingTop="10" paddingLeft="10" fontSize="10" gap="6">
        <s:Label text="Дублировать" buttonMode="true" click="duplicatePage(event)"/>
        <s:Label text="Переименовать" buttonMode="true" click="Alert.show('d')"/>
        <s:Label text="Удалить" buttonMode="true"/>
    </s:VGroup>


при нажатии на любой Label(пункт) в этом меню, общее состояние Item`a просто переходит в normal, меню закрывается, но при этом клик не обрабатывается. если ловить событие mouseOver на лабелах то все ок.

но нужно поймать клик..

спасибо


Часовой пояс GMT +4, время: 18:12.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.