2017-02-02 18 views
1

У меня есть этот AS3 класс здесь, который обнаруживает, если мышь переместилась:AS3 и Flex 4 - Применение AS3 класса в MXML файл Flex

package 
{ 
    import flash.display.Sprite; 
    import flash.events.MouseEvent; 

    public class ApplicationTimer extends Sprite 
    { 

     public function ApplicationTimer() 
     { 
      stage.addEventListener(MouseEvent.MOUSE_MOVE,mouseMoved); 
     } 

     public function mouseMoved(event:MouseEvent):void 
     { 
      trace("mouse moved") 
     } 

    } 
} 

То, что я пытаюсь сделать, это применить этот класс мой главный MXML Flex так что, когда моя мышь перемещается в моем проекте, вызывается метод mouseMoved. Как мне это сделать?

ответ

3

Файл MXML уже является классом, вы можете добавить к ним скрипт. Вы не можете использовать свой класс напрямую, потому что MXML использует гибкую архитектуру, а компонент MXML должен расширять UIComponent, а не Sprite.

<?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" 
       mouseMove="mouseMoveHandler(event)"> 

    <fx:Script> 
     <![CDATA[ 
      protected function mouseMoveHandler(event:MouseEvent):void 
      { 
       trace(event); 
      } 
     ]]> 
    </fx:Script> 

    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 
    </fx:Declarations> 
</s:Application> 

 Смежные вопросы

  • Нет связанных вопросов^_^