¿¡·¯ ÈùÆ®ÀÇ »ç¿ë

¿¡·¯ ÈùÆ®´Â,errorTip class ½Ç·ºÅͷκÎÅÍ ±× ½ºÅ¸ÀÏÀ» ÃëµæÇÏ´Â ToolTip Ŭ·¡½ºÀÇ ÀνºÅϽºÀÔ´Ï´Ù. Åë»óÀº, µ¥ÀÌÅͰ¡ ¹«È¿ÀÎ À§ÇØ(¶§¹®¿¡) Flex °ËÁõ ¸ÞÄ«´ÏÁòÀÌ °æ°í¸¦ Ç¥½ÃÇßÀ» ¶§¿¡ Ç¥½ÃµË´Ï´Ù. ´Ù¸¸,errorTip ½ºÅ¸ÀÏÀÇ Á¤ÀǸ¦ »ç¿ëÇØ ±×°ÍÀ» Åø ÈùÆ®¿¡ Àû¿ëÇØ, custom °ËÁõ °æ°í ¸ÞÄ«´ÏÁòÀ» ÀÛ¼ºÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

¿¡·¯ ÈùÆ®ÀÇ ½ºÅ¸ÀÏÀº, "framework.swc" ÆÄÀϳ»ÀÇ "defaults.css" ÆÄÀÏ¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù. errorTip ¿¡´Â, ´ÙÀ½ÀÇ µðÆúÆ® ¼³Á¤ÀÌ ÁöÁ¤µÇ°í ÀÖ½À´Ï´Ù. errorTip ÀÇ ÀüÀÇ ÇǸ®¾îµå´Â, ±×°ÍÀÌ class ½Ç·ºÅÍÀÎ °ÍÀ» ³ªÅ¸³À´Ï´Ù.

. errorTip {
    color: #FFFFFF;
    fontSize: 9;
    fontWeight: "bold";
    shadowColor: #000000;
    borderColor: #CE2929;
    borderStyle: "errorTipRight";
    paddingBottom: 4;
    paddingLeft: 4;
    paddingRight: 4;
    paddingTop: 4;
}

¿¡·¯ ÈùÆ®ÀÇ ¿Ü°üÀ» Ä¿½ºÅ͸¶ÀÌÁî ÇÏ·Á¸é , µðÆúÆ® ½ºÅ¸ÀÏÀ» ÀçÁ¤ÀÇ(override) ÇÏ´Â »õ·Î¿î Å׸¶¸¦ ÀÛ¼ºÇÏ´ÂÁö, ¶Ç´Â ¾îÇø®ÄÉÀ̼dz»¿¡¼­ ½ºÅ¸ÀÏ properties ¸¦ ÀçÁ¤ÀÇ(override) ÇÕ´Ï´Ù. Å׸¶ÀÇ ÀÛ¼ºÀÇ »ó¼¼ÇÑ °Í¿¡ ´ëÇÏ¿©´Â,Å׸¶¿¡ ´ëÇØ¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

errorTip ½ºÅ¸ÀÏÀ» Åø ÈùÆ®¿¡ Àû¿ëÇØ, °ËÁõ ¿¡·¯ ÈùÆ®¿¡ ÀÚÁÖ(Àß) ´àÀº Åø ÈùÆ®¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ ¿¹´Â, °ËÁõ ³í¸®´Â Æ÷ÇԵǾî ÀÖÁö ¾Ê½À´Ï´Ù¸¸,errorTip ½ºÅ¸ÀÏÀ» »ç¿ëÇØ °ËÁõ ¿¡·¯ ÈùÆ®¿¡ ÀÚÁÖ(Àß) ´àÀº Åø ÈùÆ®¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù. ÀÌ ¿¹¸¦ ½ÇÇàÇÒ ¶§´Â, TextInput ÄÁÆ®·Ñ¿¡ ÅØ½ºÆ®¸¦ ÀÔ·ÂÇØ Enter ۸¦ ´©¸¨´Ï´Ù.

<? xml version="1. 0"? >
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" verticalGap="20">
    <mx:Script><! [CDATA[
        import mx.controls.ToolTip;
        import mx.managers.ToolTipManager;
        
        private var errorTip:ToolTip;
        private var myError:String;
    
        private function validateEntry(type:String, event:Object) :void {
            // ¸Þ¸ð : ¿©±â¿¡ °ËÁõ ³í¸®°¡ µé¾î°£´Ù
            switch(type) {
                case "ssn":
                    myError="Use SSN format";
                    break;
                case "phone":
                    myError="Use phone format";
                    break;
            }
            // Ÿ°ÙÀÇ x ¹× y À§Ä¡¸¦ »ç¿ëÇØ, ¿¡·¯ ÈùÆ®ÀÇ À§Ä¡¸¦ ¼³Á¤ÇÕ´Ï´Ù.
            errorTip = ToolTipManager.createToolTip(myError,
event.currentTarget.x + event.currentTarget.width,
event.currentTarget.y); // errorTip class ½Ç·ºÅ͸¦ Àû¿ëÇÕ´Ï´Ù. errorTip.setStyle("styleName", "errorTip"); } ]]></mx:Script> <mx:TextInput id="ssn" enter="validateEntry('ssn', event) "/> <mx:TextInput id="phone" enter="validateEntry('phone', event) "/> </mx:Application>

ÀÌÁ¦(¹ú½á) 1 °³ÀÇ ¿¡·¯ ÈùÆ®ÀÇ »ç¿ë ¹æ¹ýÀ¸·Î¼­ ÄÄÆÛ³ÍÆ®ÀÇ errorString properties ÀÇ °ªÀ» ¼³Á¤ÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé, Åø ÈùÆ®ÀÇ ÀνºÅϽº°¡ ToolTipManager ¿¡ ÀÇÇØ ÀÛ¼ºµÇ¾î ±× Åø ÈùÆ®¿¡ errorTip ½ºÅ¸ÀÏÀÌ Àû¿ëµÇ¹Ç·Î, À¯ÀúÃø¿¡¼­ ÄÚµù ÇÒ Çʿ䰡 ¾ø½À´Ï´Ù.

´ÙÀ½ÀÇ ¿¹´Â,errorString properties ÀÇ °ªÀ» ¼³Á¤ÇØ ¿¡·¯ ÈùÆ®¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

private function validateEntry(type:String, event:Object) :void {
    private var myError:String;
    switch(type) {
        case "ssn":
            myError="Use SSN format";
            break;
        case "phone":
            myError="Use phone format";
            break;
    }
    event.currentTarget.errorString = myError;
}

¶Ç,createToolTip() ¸Þ¼Òµå¸¦ È£ÃâÇÒ ¶§ errorTipBorderStyle properties ÀÇ °ªÀ» ÁöÁ¤ÇØ, ¿¡·¯ ÈùÆ®°¡ ÀÛ¼ºµÇµµ·Ï(µíÀÌ) ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

ToolTipManager.createToolTip(myError, event.currentTarget.x + event.currentTarget.width, event.currentTarget.y, "errorTipRight");

¹ß¸® µ¥ÀÌÅÍÀÇ »ç¿ëÀÇ »ó¼¼ÇÑ °Í¿¡ ´ëÇÏ¿©´Â,µ¥ÀÌÅÍ °ËÁõÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.