| Flex 2 ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º°ú È®Àå > custom Flex ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º > Flex ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º > custom ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º > ActionScript ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º | |||
ActionScript ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼º
ActionScript Ŭ·¡½º¸¦ Á¤ÀÇÇÏ´Â °ÍÀ¸·Î, ActionScript ÄÄÆÛ³ÍÆ®¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ActionScript ¸¦ »ç¿ëÇϸé, ¾Æ·¡ ŸÀÔÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
À¯Àú ÀÎÅÍÆäÀ̽º (ºñÁÖ¾ó) ÄÄÆÛ³ÍÆ® À¯Àú ÀÎÅÍÆäÀ̽º ÄÄÆÛ³ÍÆ®´Â, ó¸® ³í¸®¿Í ºñÁÖ¾ó ¿¤¸®¸ÕÆ®ÀÇ ¾çÂÊ ¸ðµÎ¸¦ °¡Áö°í ÀÖ½À´Ï´Ù. custom À¯Àú ÀÎÅÍÆäÀ̽º ÄÄÆÛ³ÍÆ®¸¦ ÀÛ¼ºÇÏ¿©¼ ±âÁ¸ÀÇ µ¿ÀÛÀ» º¯°æÇϰųª »õ·Î¿î ±â´ÉÀ» ÄÄÆÛ³ÍÆ®¿¡ Ãß°¡ÇÕ´Ï´Ù. º¸Åë ÀÌ·¯ÇÑ ÄÄÆÛ³ÍÆ®´Â Flex ÄÄÆÛ³ÍÆ® °èÃþÀ» È®ÀåÇÕ´Ï´Ù. UIComponent Ŭ·¡½º³ª Button ,ComboBox ,DataGrid µîÀÇ ÀÓÀÇÀÇ Flex ÄÄÆÛ³ÍÆ®¸¦ È®ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. ActionScript ÀÇ custom ÄÄÆÛ³ÍÆ®´Â, Super Ŭ·¡½ºÀÇ ¸Þ¼Òµå, ¼Ó¼º(properties) , À̺¥Æ®, ½ºÅ¸ÀÏ, ¹× Effect¸¦ ¸ðµÎ »ó¼Ó¹Þ½À´Ï´Ù.
ºñÁÖ¾óÇÏÁö ¾ÊÀº ÄÄÆÛ³ÍÆ® ºñÁÖ¾óÇÏÁö ¾ÊÀº ÄÄÆÛ³ÍÆ®´Â ºñÁÖ¾ó ¿¤¸®¸ÕÆ®¸¦ Á¤ÀÇÇÏÁö ¾Ê½À´Ï´Ù. Flex ¿¡´Â Formatter, Validator , Effect µîÀÇ À¯Àú°¡ ÀÛ¼º °¡´ÉÇÑ ¸î °³ÀÇ Å¸ÀÔÀÇ ºñÁÖ¾óÇÏÁö ¾ÊÀº ÄÄÆÛ³ÍÆ®°¡ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ÄÄÆÛ³ÍÆ®¸¦ ÀÛ¼ºÇÏ·Á¸é Flex ÄÄÆÛ³ÍÆ® °èÃþÀ¸·ÎºÎÅÍ ¼ºê Ŭ·¡½º¸¦ ÀÛ¼ºÇÕ´Ï´Ù. Validator ÀÇ °æ¿ì´Â Validator Ŭ·¡½ºÀÇ ¼ºê Ŭ·¡½º, FormatterÀÇ °æ¿ì´Â Formatter Ŭ·¡½ºÀÇ ¼ºê Ŭ·¡½º, EffectÀÇ °æ¿ì´Â Effect Ŭ·¡½ºÀÇ ¼ºê Ŭ·¡½º¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¿¹¿¡ ³ªÅ¸³»µíÀÌ, Flex Button Ŭ·¡½º¿¡ ±Ù°ÅÇØ custom Button ÄÄÆÛ³ÍÆ®¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù.
package myComponents
{
import mx.controls.Button;
public class MyButton extends Button {
// constructor¡¡ ¡¡ À» Á¤ÀÇÇÑ´Ù
public function MyButton() {
// Super Ŭ·¡½ºÀÇ constructor¡¡ ¡¡ À» È£ÃâÇÑ´Ù
super();
// label properties ¸¦ "Submit" ·Î ¼³Á¤ÇÑ´Ù
label="Submit";
}
}
}
ÀÌ ¿¹¿¡¼´Â, MyButton Ŭ·¡½º¸¦ "MyButton.as" ÆÄÀÏ¿¡ ÀÛ¼ºÇÕ´Ï´Ù.
ActionScript ÆÐŰÁö³»¿¡¼ custom ÄÄÆÛ³ÍÆ®¸¦ Á¤ÀÇÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÆÐŰÁö¿¡´Â ¾îÇø®ÄÉÀ̼ÇÀÇ µð·ºÅ丮 ±¸Á¶¿¡ ÀÖ¾î¼ÀÇ ÄÄÆÛ³ÍÆ®ÀÇ µð·ºÅ丮ÀÇ Àå¼Ò°¡ ³ªÅ¸³³´Ï´Ù. º¸Åë custom ActionScript ÄÄÆÛ³ÍÆ®ÀÇ °æ·Î´Â ActionScript ÀÇ classpath¿¡ Æ÷ÇԵǾî ÀÖ´Â µð·ºÅ丮, ¾îÇø®ÄÉÀ̼ÇÀÇ ÇÏÀ§ µð·ºÅ丮 ¶Ç´Â Flex Data Services ÀÇ °æ¿ì´Â WEB-INF/flex/user_classes µð·ºÅ丮³»°¡ µË´Ï´Ù. ÀÌ ¿¹¿¡¼ÀÇ package Ç¥±â´Â Flex ¾îÇø®ÄÉÀÌ¼Ç "myComponents" ÇÏÀ§ µð·ºÅ丮³»¿¡ ÀÖ´Â "MyButton.as" ÆÄÀÏÀ» ÁöÁ¤ÇÕ´Ï´Ù.
´ÙÀ½ÀÇ ¿¹¿¡ ³ªÅ¸³»µíÀÌ, custom ÄÄÆÛ³ÍÆ®¸¦ ÂüÁ¶ÇÏ´Â MXML ÆÄÀÏ¿¡¼´Â MXML ÆÄÀϳ»¿¡¼ namespace¸¦ Á¤ÀÇÇØ ÂüÁ¶ÇÕ´Ï´Ù.
<? xml version="1. 0"? > <! -- myApplication.mxml --> <! -- custom ÄÄÆÛ³ÍÆ®ÀÇ namespace Á¤ÀǸ¦ include ÇÑ´Ù --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"xmlns:MyComp="myComponents. *"> <! -- ÆÄÀϸíÀ» MXML ű׸íÀ¸·Î¼ »ç¿ëÇÑ´Ù --><MyComp:MyButton/></mx:Application>
ÀÌ ¿¹¿¡¼´Â, ¾îÇø®ÄÉÀ̼ÇÀÇ µð·ºÅ丮 ±¸Á¶³»ÀÇ custom ÄÄÆÛ³ÍÆ®ÀÇ À§Ä¡¸¦ ÁöÁ¤ÇÏ´Â MyComp namespace¸¦ ÃÖÃÊ·Î Á¤ÀÇÇÕ´Ï´Ù. ´ÙÀ½¿¡ namespaceÀÇ Á¢µÎ»ç¸¦ »ç¿ëÇÏ¿© ÄÄÆÛ³ÍÆ®¸¦ MXML ű׷μ ÂüÁ¶ÇÕ´Ï´Ù.
»ó¼¼ÇÑ °Í¿¡ ´ëÇØ¼´Â, ActionScript ¿¡ ÀÇÇÑ °£´ÜÇÑ ºñÁÖ¾ó ÄÄÆÛ³ÍÆ®ÀÇ ÀÛ¼ºÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
