Creating an undraggable Alert control in Flex

The following example shows how you can create a Flex Alert control that isn’t draggable by listening for the mouseDown event and calling the stopImmediatePropagation() method in the event handler.

Full code after the jump.

<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/03/21/creating-an-undraggable-alert-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white">

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

            private function draggableAlert():void {
                Alert.show("Drag me!");
            }

            private function undraggableAlert():void {
                var alert:Alert = Alert.show("Drag me!");
                alert.addEventListener(MouseEvent.MOUSE_DOWN, alert_mouseDown, true);
            }

            private function alert_mouseDown(evt:MouseEvent):void {
                evt.stopImmediatePropagation();
            }
        
]]>
    
</mx:Script>

    
<mx:ApplicationControlBar dock="true">
        
<mx:Button label="Draggable Alert"
                click
="draggableAlert();" />
        
<mx:Button label="Undraggable Alert"
                click
="undraggableAlert();" />
    
</mx:ApplicationControlBar>

</mx:Application>
原文地址:https://www.cnblogs.com/taobataoma/p/1278192.html