Flex4事件的监听与发布

事件介绍:

     事件可以看作是一种触发机制,当满足了一定的条件后,会触发这个事件。比如MouseEvent就是指当鼠标进行操作后触的一系列的事件。很多控件中都有 click事件,这个事件就是一个MouseEvent癿实例,当点击鼠标后,系统会自动抛出一个名称为click癿MouseEvent事件.

      如:

<?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/halo"
               minWidth="1024"
               minHeight="768"
               initialize="init()">

    <fx:Script>
        <![CDATA[
            private function init():void
            {
                btnTest3.addEventListener(MouseEvent.CLICK, handleClick);
            }

            protected function handleClick(event:MouseEvent):void
            {
                if (event.target == btnTest3)
                {
                    lblMsg.text="btnTest3被点击";
                }
                else if (event.target == btnTest2)
                {
                    lblMsg.text="btnTest2被点击";
                }

            }

            protected function btnTest1_clickHandler(event:MouseEvent):void
            {

                lblMsg.text+="btnTest1被点击了";

            }
        ]]>
    </fx:Script>

    <s:VGroup width="100%">
        <s:Button id="btnTest1"
                  label="按钮一"
                  click="btnTest1_clickHandler(event)"/>
        <s:Button id="btnTest2"
                  label="按钮二"
                  click="handleClick(event)"/>
        <s:Button id="btnTest3"
                  label="按钮三"/>
        <s:Label id="lblMsg"/>
    </s:VGroup>
</s:Application>

在我们写代码时,编辑器癿代码补全提示列表中,有很多的图标,如图

image
那些带有闪电癿就是事件,三个小块的就是样式,空心圆圈的是属性,实心圆点的是公有方法,还有一个是效果。

现在我们在这个页面新建立三个按钮:btnTest1,btnTest2,btnTest3 和一个Label作为提示信息:lblMsg 都放置到容器控件VGroup中

参考资料:

关于flex事件的讲解.pdf

原文地址:https://www.cnblogs.com/liangwei389/p/1690999.html