| Flex 2 °³¹ß °¡À̵å > Flex ÇÁ·Î±×·¥ ¾ð¾îÀÇ »ç¿ë > À̺¥Æ®ÀÇ »ç¿ë > À̺¥Æ®ÀÇ ¼ºê Ŭ·¡½ºÀÇ »ç¿ë | |||
À̺¥Æ®ÀÇ ¼ºê Ŭ·¡½ºÀÇ »ç¿ë
À̺¥Æ®ÀÇ Å¸ÀÔ¿¡ µû¶ó¼´Â,Event ¿ÀºêÁ§Æ®¿¡ ´Ù¾çÇÑ properties ¸¦ Æ÷ÇÔÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ properties ´Â, W3C ÀÇ »ç¾ç (www.w3.org/TR/DOM-Level-3-Events/events.html )¿¡ ±ÔÁ¤µÇ°í ÀÖ´Â properties ¿¡ ±Ù°ÅÇϰí ÀÖ½À´Ï´Ù¸¸, »ç¾ç¿¡ ±ÔÁ¤ ¶°³¯ ¼ö ÀÖ¾î ¸ðµç properties °¡ Flex ·Î ±¸ÇöµÇ°í ÀÖ´Â °ÍÀº ¾Æ´Õ´Ï´Ù.
Listener ÇÔ¼ö·Î Event ¿ÀºêÁ§Æ®¸¦ ¼±¾ðÇÏ·Á¸é , ±× ¿ÀºêÁ§Æ®¸¦ Event ÇüÀ¸·Î¼ ¼±¾ðÇÏ´ÂÁö, ¶Ç´Â Event ¿ÀºêÁ§Æ®ÀÇ ¼ºê Ŭ·¡½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ´ÙÀ½ÀÇ ¿¹¿¡¼´Â, Event ¿ÀºêÁ§Æ®ÀÇ Å¸ÀÔÀ» MouseEvent ·Î ÁöÁ¤Çϰí ÀÖ½À´Ï´Ù.
public function performAction(e:MouseEvent) :void {
...
}
´ëºÎºÐÀÇ ÄÁÆ®·Ñ¿¡¼´Â, ƯÁ¤ÀÇ À̺¥Æ® ŸÀÔÀÇ ¿ÀºêÁ§Æ®°¡ »ý¼ºµË´Ï´Ù. ¿¹¸¦ µé¾î, ¸¶¿ì½º Ŭ¸¯¿¡¼´Â, MouseEvent ŸÀÔÀÇ ¿ÀºêÁ§Æ®°¡ »ý¼ºµË´Ï´Ù. º¸´Ù »ó¼¼ÇÑ À̺¥Æ® ŸÀÔÀ» ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î½á, Event ¿ÀºêÁ§Æ®¸¦ ´Ù¸¥ ¿ÀºêÁ§Æ®¿¡ ij½ºÆ® ÇÏÁö ¾Ê¾Æµµ, ƯÁ¤ÀÇ properties ¿¡ ¾×¼¼½º ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¶Ç, Event ¿ÀºêÁ§Æ®ÀÇ ÀϺÎÀÇ ¼ºê Ŭ·¡½º¿¡´Â, °íÀ¯ÀÇ ¸Þ¼Òµå¸¦ °¡Áö´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î LogEvent ¿¡´Â, ·Î±× ·¹º§À» string·Î¼ µ¹·ÁÁÖ´Â getLevelString() ¸Þ¼Òµå°¡ ÀÖ½À´Ï´Ù. ¹ü¿ëÀûÀÎ Event ¿ÀºêÁ§Æ®¿¡´Â, ÀÌ ¸Þ¼Òµå´Â Æ÷ÇԵǾî ÀÖÁö ¾Ê½À´Ï´Ù.
½ÇÇà½Ã¿¡ Á¤ÀÇÇÏ´Â À̺¥Æ® ¿ÀºêÁ§Æ®¿¡´Â, ÄÄÆÄÀϽÃÀÇ ÇüÅÂÀÇ ¼ºê Ŭ·¡½º¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ƯÁ¤ÀÇ À̺¥Æ® ŸÀÔÀ» ¼±¾ðÇϰí ÀÖÁö ¾ÊÀº °æ¿ì¿¡¼µµ, Event ¿ÀºêÁ§Æ®¸¦ ƯÁ¤ÀÇ Å¸ÀÔ¿¡ ij½ºÆ® Çϸé, event listener³»ÀÇ À̺¥Æ® °íÀ¯ÀÇ properties ¿¡ ¾×¼¼½º ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ ÇÔ¼öÀÇ ¿¹¿¡¼´Â, ¿ÀºêÁ§Æ® ŸÀÔ Event ¸¦ Á¤ÀÇÇÕ´Ï´Ù. ´Ù¸¸, ÇÔ¼ö³»¿¡¼ MouseEvent Ŭ·¡½º¿¡ °íÀ¯ÀÇ localX properties ¹× localY properties ¿¡ ¾×¼¼½º ÇÏ·Á¸é , Event ¿ÀºêÁ§Æ®¸¦ MouseEvent ŸÀÔ¿¡ ij½ºÆ® ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
<? xml version="1. 0"? >
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="addListeners() ">
<mx:Script><! [CDATA[
private function customLogEvent(e:Event) :void {
private var a:MouseEvent = MouseEvent(e);
trace(a.localY + ":" + a.localX);
}
private function addListeners() :void {
b1.addEventListener(MouseEvent.CLICK, customLogEvent);
}
]]></mx:Script>
<mx:VBox id="vb1">
<mx:Button id="b1" label="Click Me"/>
</mx:VBox>
</mx:Application>
Event ¿ÀºêÁ§Æ®¸¦ ƯÁ¤ÀÇ Å¸ÀÔÀ¸·Î¼ ¼±¾ðÇßÀ» °æ¿ì´Â, Çڵ鷯·Î ±× ¿ÀºêÁ§Æ®¸¦ ij½ºÆ® ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ´ÙÀ½¿¡ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù.
private function customLogEvent(e:MouseEvent) :void { ... }
ÀüÀÇ ¿¹¿¡¼´Â, properties ¿¡ ¾×¼¼½º Çϱâ À§ÇÑ(ÇØ)ÀÎ ¸¸Å Event ¿ÀºêÁ§Æ®¸¦ ij½ºÆ® ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ±× °æ¿ì´Â, ´ÙÀ½ÀÇ ¹®À屸Á¶¹ýÀ» »ç¿ëÇÕ´Ï´Ù.
trace(MouseEvent(e). localY + ":" + MouseEvent(e). localX);
ÀÌ·¸°Ô Çϸé, ¸Þ¸ð¸®¿Í system resourceÀÇ ¼Òºñ·®À» ¾ïÁ¦ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, À̺¥Æ®ÀÇ Å¸ÀÔÀº ÇÒ ¼ö ÀÖ´Â ÇÑ »ó¼¼ÇÏ°Ô ¼±¾ðÇÏ´Â °ÍÀ» ÃßõÇÕ´Ï´Ù.
Event ¿ÀºêÁ§Æ®ÀÇ °¢ ¼ºê Ŭ·¡½º¿¡´Â, ±× À̺¥Æ®ÀÇ Ä«Å×°í¸®¿¡ °íÀ¯ÀÇ properties ¹× À̺¥Æ® ŸÀÔÀÌ Ãß°¡µÇ°í ÀÖ½À´Ï´Ù. MouseEvent Ŭ·¡½º¿¡¼´Â, ±× ÀÔ·Â µð¹ÙÀ̽º¿¡ °ü·ÃÇÑ À̺¥Æ® ŸÀÔÀÌ º¹¼ö Á¤Àǵǰí ÀÖ½À´Ï´Ù. À̰Ϳ¡´Â,CLICK,DOUBLE_CLICK,MOUSE_DOWN,MOUSE_UP µîÀÇ À̺¥Æ® ŸÀÔÀÌ ÀÖ½À´Ï´Ù.
°¢ Event ¼ºê Ŭ·¡½ºÀÇ Å¸ÀÔÀÇ ¸ñ·Ï¿¡ ´ëÇØ¼´Â, ¡¸Adobe Flex 2 ·¹ÆÛ·±½º °¡À̵塹ÀÇ ¼ºê Ŭ·¡½ºÀÇ Ç׸ñÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
