Szymon Wygnański
Szymon Wygnański

Reputation: 11064

Flex PopUpAnchor created manually not showing up

I need to create a component using ActionScript. Can't use mxml in this case. In my component I need to create PopUpAnchor using new operator and addElement to the stage. Unfortunatelly when I'm doing it, the PopUpAnchor's displayPopUp property does not respond to any values. Here is my the example:

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
     xmlns:s="library://ns.adobe.com/flex/spark" 
     initialize="init(event)">

    <fx:Script>
        <![CDATA[
            import mx.events.FlexEvent;

            import spark.components.Label;
            import spark.components.PopUpAnchor;

            protected function init(event:FlexEvent):void
            {
                var anchor:PopUpAnchor = new PopUpAnchor();
                var label:Label = new Label();
                label.text = 'ABC';
                anchor.addChild(label);

                addElement(anchor);
                anchor.displayPopUp = true;
            }

        ]]>
    </fx:Script>

</s:WindowedApplication>

I'm using Flex SDK 4.5 with AIR SDK 2.6. What am I doing wrong?

Upvotes: 1

Views: 815

Answers (1)

Szymon Wygnański
Szymon Wygnański

Reputation: 11064

I figured it out. The problem is that i connot use addChild on anchor. I should use popUp property instead.

So, this line is WRONG:

anchor.addChild(label);

and should be corrected to this form:

anchor.popUp = label;

Upvotes: 4

Related Questions