можно ли сделать как: прямоугольник кликабелен во Flex? - PullRequest
0 голосов
/ 21 ноября 2010

используя flex, возможно ли сделать квадрат, нарисованный с помощью s: rect, clickable?

Я пытаюсь нарисовать серию цветных прямоугольников и позволить им нажимать для выполнения действия.

1 Ответ

0 голосов
/ 21 ноября 2010

Я не смог нацелиться на него напрямую, поэтому я обернул его в BorderContainer, и это помогло.Или вы можете просто использовать BorderContainer, если все, что вам нужно, это поле, которое вы можете раскрасить и нацелиться.

<?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:Script>
        <![CDATA[
            import mx.controls.Alert;

            public function init():void{

                myBox.addEventListener(MouseEvent.MOUSE_OVER, changeColor);

            }

            public function changeColor(e:MouseEvent):void
            {
                myFill.color = 0xFFFF00;
            }


        ]]>
    </fx:Script>

    <s:states>

    </s:states>

    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
        <s:SolidColor id="myFill" color="0xFF0000" />
        <s:SolidColorStroke id="myStroke" color="0x000000" weight="2" />
    </fx:Declarations>

    <s:BorderContainer id="myBox" >     
        <s:Rect width="200" height="200" fill="{myFill}" stroke="{myStroke}" id="box1" />
    </s:BorderContainer>



</s:Application>
...