|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.beans.EventHandler
public class EventHandler
EventHandler
Ŭ·¡½º´Â ¼ö½Å À̺¥Æ® °´Ã¼¿Í Ÿ°Ù °´Ã¼¸¦ Æ÷ÇÔÇÑ ´Ü¼øÇÑ ¹®ÀåÀ» ½ÇÇàÇÏ´Â ¸Þ¼µå¸¦ °¡Áö´Â À̺¥Æ® ¸®½º³ÊÀÇ µ¿Àû »ý¼ºÀ» Áö¿øÇÕ´Ï´Ù.
EventHandler
Ŭ·¡½º´Â °³¹ßÀÚ°¡ Bean °£ÀÇ Á¢¼ÓÀ» È®¸³Çϱâ À§Çؼ »ç¿ëÇÏ´Â ¾ÆÇÁ¸®ÄÉÀ̼Ǻô´õ
¿Í °°Àº ´ëÈÇü Åø·Î »ç¿ëµË´Ï´Ù. º¸Åë, Á¢¼ÓÀº »ç¿ëÀÚ
ÀÎÅÍÆäÀ̽º Bean (À̺¥Æ® ¼Ò½º)·ÎºÎÅÍ ¾îÇø®ÄÉÀÌ¼Ç ³í¸® Bean (Ÿ°Ù)¸¦ ÇâÇØ È®¸³µË´Ï´Ù. ±× Áß¿¡¼µµ, »ç¿ëÀÚ
ÀÎÅÍÆäÀ̽º·ÎºÎÅÍ ¾îÇø®ÄÉÀÌ¼Ç ³í¸®¸¦ °Ý¸®ÇÏ´Â °Í °°Àº Á¢¼ÓÀº ƯÈ÷ È¿°úÀûÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, JCheckBox
¿Í
ºÒ¸®¾ð °ªÀ» ¹Þ¾ÆµéÀÌ´Â ¸Þ¼µå¸¦ Á¢¼ÓÇÏ´Â EventHandler
´Â
üũ ¹Ú½º »óŸ¦ ÃßÃâÇØ, À̰ÍÀ» Á÷Á¢ ¸Þ¼µå¿¡ °Ç³×ÁÖ´Â °Í¿¡ÀÇÇØ ¸Þ¼µå¸¦ »ç¿ëÀÚ
ÀÎÅÍÆäÀ̽ºÃþÀ¸·ÎºÎÅÍ °Ý¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù
.
»ç¿ëÀÚ
ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÑ À̺¥Æ®ÀÇ Ã³¸® ¹æ¹ýÀ¸·Î¼ º¸´Ù ÀϹÝÀûÀÎ °ÍÀº ³»ºÎ Ŭ·¡½º¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. EventHandler
Ŭ·¡½º¿¡¼ ó¸®ÇÒ ¼ö ÀÖ´Â °ÍÀº ³»ºÎ Ŭ·¡½º¿¡¼ ó¸®ÇÒ ¼ö ÀÖ´Â À̺¥Æ®ÀÇ ºÎºÐÁýÇÕ¿¡ Áö³ªÁö ¾Ê½À´Ï´Ù. ±×·¯³ª, Àå±â Áö¼Ó schema¿¡¼´Â ³»ºÎ Ŭ·¡½ºº¸´Ù EventHandler
ÂÊÀÌ ¿ì¼öÇÕ´Ï´Ù. ¶Ç, °°Àº ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϰí ÀÖ´Â ´ë±Ô¸ð ¾îÇø®ÄÉÀ̼ÇÀ¸·Î EventHandler
¸¦ ¹Ýº¹ÇØ ÀÌ¿ëÇϸé, µð½ºÅ©³ª ¾îÇø®ÄÉÀ̼ÇÀÇ ¸Þ¸ð¸®ÈÊÆ®ÇÁ¸°Æ®¸¦ »è°¨ÇÒ ¼ö ÀÖ½À´Ï´Ù.
EventHandler
·Î
ÀÛ¼ºµÈ ¸®½º³ÊÀÇ ¹ßÀÚ±¹ÀÌ ÀÛÀº °ÍÀº ÀÌ Å¬·¡½ºÀÇ Á¸Ã³ÀÇ Proxy
Ŭ·¡½º°¡ °°Àº ÀÎÅÍÆäÀ̽ºÀÇ ±¸ÇöÀ» °øÀ¯Çϰí Àֱ⠶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, EventHandler
create
¸Þ¼µå¸¦ »ç¿ëÇØ ¾îÇø®ÄÉÀ̼dz»ÀÇ ¸ðµç ActionListener
¸¦ ÀÛ¼ºÇÏ´Â °æ¿ì, ¸ðµç ¾×¼Ç ¸®½º³Ê´Â ´ÜÀÏÀÇ Å¬·¡½º (Proxy
Ŭ·¡½º¿¡ ÀÇÇØ »ý¼ºµÈ Ŭ·¡½º)ÀÇ ÀνºÅϽº°¡ µË´Ï´Ù. º¸Åë, Proxy
Ŭ·¡½ºÀÇ ¸®½º³Ê¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â ¡¸¸®½º³ÊÇü¡¹(ÀÎÅÍÆäÀ̽º) ¸¶´Ù ¸®½º³Ê Ŭ·¡½º¸¦ 1°³
¾¿ ÀÛ¼ºÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ±×·¯³ª, ³»ºÎ Ŭ·¡½º¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡¼´Â ¸®½º³Ê (ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °´Ã¼) ¸¶´Ù Ŭ·¡½º¸¦ 1°³
¾¿ ÀÛ¼ºÇÏ´Â °Í¸¸À¸·Î ³¡³³´Ï´Ù.
º¸Åë, EventHandler
ÀνºÅϽº¸¦ Á÷Á¢ Ãë±ÞÇÒ °ÍÀº ¾ø½À´Ï´Ù. ±× ´ë½Å¿¡
EventHandler
create
¸Þ¼µå¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ ¸®½º³Ê ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ÀÌ ¸®½º³Ê °´Ã¼´Â ³»ºÎ¿¡¼ EventHandler
°´Ã¼¸¦ »ç¿ëÇØ, À̺¥Æ®¿¡ °üÇÑ Á¤º¸, À̺¥Æ® ¹ß»ý½Ã¿¡ ¸Þ¼¼Áö°¡ ¼Û½ÅµÇ´Â °´Ã¼, ¼Û½ÅµÇ´Â ¸Þ¼¼Áö (¸Þ¼µå), ¸Þ¼µåÀÇ Àμö¸¦ ĸ½¶ÈÇÕ´Ï´Ù. ÀÌÇÏ¿¡¼´Â ¿¹¸¦ »ç¿ëÇØ, create
¸Þ¼µå¿¡
ÇÑ ¸®½º³Ê °´Ã¼ÀÇ ÀÛ¼º ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù.
EventHandler
ÀÌ¿ë ¹æ¹ýÀÔ´Ï´Ù. ´ÙÀ½ÀÇ ¿¹¿¡¼´Â javax.swing.JFrame
ÀνºÅϽº»óÀÇ toFront
¸Þ¼µå¸¦ È£ÃâÇÏ´Â ActionListener
¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
myButton.addActionListener( (ActionListener) EventHandler.create(ActionListener.class, frame, "toFront"));
myButton
À»
´©¸£¸é, frame.toFront()
¹®ÀÌ ½ÇÇàµË´Ï´Ù. ÄÄÆÄÀϽÃÀÇ ÇüÅ º¸ÁõÀ» Ãß°¡Çصµ, °°Àº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡´Â ActionListener
ÀÎÅÍÆäÀ̽ºÀÇ »õ·Î¿î ±¸ÇöÀ» Á¤ÀÇÇØ, ±× ÀνºÅϽº¸¦ ¹öư¿¡ Ãß°¡ÇÕ´Ï´Ù.
´ÙÀ½¿¡ ´Ü¼øÇÑ ÀÌ¿ë ¹æ¹ýÀ¸·Î¼ ¸®½º³Ê ÀÎÅÍÆäÀ̽º (ÀϹÝÀûÀ¸·Î À̺¥Æ® °´Ã¼) ³»ÀÇ ¸Þ¼µåÀÇ ÃÖÃÊÀÇ Àμö·ÎºÎÅÍ ÇÁ·ÎÆÛƼġ¸¦ ÃßÃâÇØ, À̰ÍÀ» »ç¿ëÇØ Ÿ°Ù °´Ã¼³»ÀÇ ÇÁ·ÎÆÛƼġ¸¦ ¼³Á¤ÇÏ´Â ¿¹¸¦ ¼Ò°³ÇÕ´Ï´Ù. ÀÌ ¿¹¿¡¼´Â Ÿ°Ù °´Ã¼ÀÇ//Equivalent code using an inner class instead of EventHandler.myButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { frame.toFront(); }});
nextFocusableComponent
ÇÁ·ÎÆÛƼ¸¦ À̺¥Æ®ÀÇ ¼Ò½º ÇÁ·ÎÆÛƼÀÇ °ªÀ¸·Î ¼³Á¤ÇÏ´Â ActionListener
¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
À̰ÍÀº ´ÙÀ½ÀÇ ³»ºÎ Ŭ·¡½º ±¸Çö¿¡ ´ëÀÀÇϰí ÀÖ½À´Ï´Ù.EventHandler.create(ActionListener.class, target, "nextFocusableComponent", "source")
À̺¥Æ® °´Ã¼ÀÇ ¼Ò½º·ÎºÎÅÍ ÇÁ·ÎÆÛƼġ¸¦ ÃßÃâÇØ, ÀÌ °ªÀ» Ÿ°Ù °´Ã¼ÀÇ ÇÁ·ÎÆÛƼ°ªÀ¸·Î ¼³Á¤ÇÑ´Ù´Â °ÍÀÌ, ¾Æ¸¶ °¡Àå ÀϹÝÀûÀÎ//Equivalent code using an inner class instead of EventHandler.new ActionListener() { public void actionPerformed(ActionEvent e) { button.setNextFocusableComponent((Component) e.getSource()); }}
EventHandler
ÀÌ¿ë ¹æ¹ýÀÌÁö¿ä. ´ÙÀ½ÀÇ ¿¹¿¡¼´Â Ÿ°Ù °´Ã¼ÀÇ label ÇÁ·ÎÆÛƼ¸¦, À̺¥Æ®ÀÇ ¼Ò½ºÀÇ text ÇÁ·ÎÆÛƼÀÇ °ª (source ÇÁ·ÎÆÛƼÀÇ °ª)À¸·Î ¼³Á¤ÇÏ´Â ActionListener
¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
À̰ÍÀº ´ÙÀ½ÀÇ ³»ºÎ Ŭ·¡½º ±¸Çö¿¡ ´ëÀÀÇϰí ÀÖ½À´Ï´Ù.EventHandler.create(ActionListener.class, button, "label", "source.text")
À̺¥Æ® ÇÁ·ÎÆÛƼ´Â ÇǸ®¾îµå (. )(À¸)·Î ´Ü¶ôÁö¾îÁø ÀÓÀÇÀÇ ¼öÀÇ ÇÁ·ÎÆÛƼ Á¢µÎ»ç¿¡ ÀÇÇØ ¼ö½ÄµË´Ï´Ù. ÇǸ®¾îµåÀÇ Àü¿¡ Ç¥½ÃµÇ´Â ¿ÏÀü ÁöÁ¤¸íÀº À̺¥Æ® °´Ã¼¿¡ Àû¿ëµÇ´Â ÇÁ·ÎÆÛƼ (¿ÞÂÊÀ¸·ÎºÎÅÍ ¼ø¼¿¡ Àû¿ë)ÀÇ À̸§À¸·Î¼ ´Ù·ç¾îÁý´Ï´Ù.//Equivalent code using an inner class instead of EventHandler.new ActionListener { public void actionPerformed(ActionEvent e) { button.setLabel(((JTextField) e.getSource()). getText()); }}
¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº ¾×¼Ç ¸®½º³Ê°¡ ÀÖ½À´Ï´Ù.
ÀÌ ¾×¼Ç ¸®½º³Ê´Â ´ÙÀ½ÀÇ ³»ºÎ Ŭ·¡½º·Î¼ Ãâ·ÂÇØÁý´Ï´Ù (¸ðµç ÇÁ·ÎÆÛƼ°¡ Á¤±ÔÀÇ get ¸Þ¼µå¸¦ °¡Á®, ÀûÀýÇÑ ÇüŸ¦ µ¹·ÁÁÖ´Â °Í°ú »óÁ¤).EventHandler.create(ActionListener.class, target, "a", "b.c.d")
//Equivalent code using an inner class instead of EventHandler.new ActionListener { public void actionPerformed(ActionEvent e) { target.setA(e.getB(). getC(). isD()); }}
Proxy
,
EventObject
»ý¼ºÀÚ °³¿ä | |
---|---|
EventHandler (Object target,
String action,
String eventPropertyName,
String listenerMethodName)
»õ·Î¿î EventHandler °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù (ÀÌ »ý¼ºÀÚ¸¦ Á÷Á¢ È£ÃâÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó create ¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÀϹÝÀû). |
¸Þ¼µå °³¿ä | ||
---|---|---|
static
|
create (Class <T> listenerInterface,
Object target,
String action)
¸®½º³Ê ÀÎÅÍÆäÀ̽º³»ÀÇ ¸ðµç ¸Þ¼µå°¡ Çڵ鷯ÀÇ action À»
target ¿¡ Àû¿ëÇϱâ À§ÇÑ listenerInterface ±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
static
|
create (Class <T> listenerInterface,
Object target,
String action,
String eventPropertyName)
¸ðµç ¸Þ¼µå·ÎºÎÅÍ, À̺¥Æ®½Ä eventPropertyName °ªÀ» ¹®ÁßÀÇ ¸¶Áö¸· ¸Þ¼µåÀÎ action (target ¿¡ Àû¿ëµÈ´Ù)¿¡ °Ç³×ÁÖ±â À§ÇÑ listenerInterface ±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
static
|
create (Class <T> listenerInterface,
Object target,
String action,
String eventPropertyName,
String listenerMethodName)
listenerMethodName ¶ó´Â À̸§ÀÇ ¸Þ¼µå·ÎºÎÅÍ, À̺¥Æ®½ÄÀÇ °ª eventPropertyName ¸¦ ¹®ÁßÀÇ ¸¶Áö¸· ¸Þ¼µå action (target ¿¡ Àû¿ëµÈ´Ù)¿¡ °Ç³×ÁÖ±â À§ÇÑ listenerInterface ±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
String |
getAction ()
ÀÌ À̺¥Æ® Çڵ鷯¿¡ ÀÇÇØ ¼³Á¤µÇ´Â Ÿ°ÙÀÇ Ãâ·Â°¡´ÉÇÑ ÇÁ·ÎÆÛƼ, ¶Ç´Â ÀÌ À̺¥Æ® Çڵ鷯°¡ Ÿ°Ù»ó¿¡¼ È£ÃâÇÏ´Â ¸Þ¼µåÀÇ À̸§À» ¸®ÅÏÇÕ´Ï´Ù. |
|
String |
getEventPropertyName ()
Ÿ°ÙÀ¸·Î Àû¿ëµÇ´Â ¾×¼ÇÀ¸·Î »ç¿ëµÇ´Â À̺¥Æ®ÀÇ ÇÁ·ÎÆÛƼ¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
String |
getListenerMethodName ()
¾×¼ÇÀ» Æ®¸®°Å ÇÏ´Â ¸Þ¼µåÀÇ À̸§À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Object |
getTarget ()
ÀÌ À̺¥Æ® Çڵ鷯°¡ ¸Þ¼¼ÁöÀÇ ¼Û½ÅÁö·Î ÇÏ´Â °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Object |
invoke (Object proxy,
Method method,
Object [] arguments)
À̺¥Æ®·ÎºÎÅÍ ÀûÀýÇÑ ÇÁ·ÎÆÛƼġ¸¦ ÃßÃâÇØ, ÀÌ EventHandler ¿¡ °ü·ÃµÈ
¾×¼Ç¿¡ °Ç³×ÁÝ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public EventHandler(Object target, String action, String eventPropertyName, String listenerMethodName)
EventHandler
°´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù (ÀÌ »ý¼ºÀÚ¸¦ Á÷Á¢ È£ÃâÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó create
¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÀϹÝÀû).
target
- ¾×¼ÇÀ» ½ÇÇàÇÏ´Â °´Ã¼action
- Ÿ°Ù»óÀÇ Ãâ·Â°¡´ÉÇÑ ÇÁ·ÎÆÛƼ ¶Ç´Â ¸Þ¼µåÀÇ (¿ÏÀü ÁöÁ¤µÈ) À̸§eventPropertyName
- ¼ö½Å À̺¥Æ®ÀÇ Àбâ
°¡´ÉÇÑ ÇÁ·ÎÆÛƼÀÇ (¿ÏÀü ÁöÁ¤µÈ) À̸§listenerMethodName
- ¾×¼ÇÀ» Æ®¸®°Å ÇÏ´Â ¸®½º³Ê ÀÎÅÍÆäÀ̽º³»ÀÇ ¸Þ¼µåÀÇ À̸§EventHandler
,
create(Class, Object, String, String, String)
,
getTarget()
,
getAction()
,
getEventPropertyName()
,
getListenerMethodName()
¸Þ¼µåÀÇ »ó¼¼ |
---|
public Object getTarget()
EventHandler(Object, String, String, String)
public String getAction()
EventHandler(Object, String, String, String)
public String getEventPropertyName()
EventHandler(Object, String, String, String)
public String getListenerMethodName()
null
˼
¸®½º³Ê ÀÎÅÍÆäÀ̽º³»ÀÇ ¸ðµç ¸Þ¼µå°¡ ¾×¼ÇÀ» Æ®¸®°Å ÇÏ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.
EventHandler(Object, String, String, String)
public Object invoke(Object proxy, Method method, Object [] arguments)
EventHandler
¿¡ °ü·ÃµÈ
¾×¼Ç¿¡ °Ç³×ÁÝ´Ï´Ù.
InvocationHandler
³»ÀÇ invoke
proxy
- ÇÁ·Ï½Ã °´Ã¼method
- ¸®½º³Ê ÀÎÅÍÆäÀ̽º³»ÀÇ ¸Þ¼µåarguments
- ÇÁ·Ï½Ã ÀνºÅϽº¿¡¼ÀÇ ¸Þ¼µå È£Ãâ½Ã¿¡°Ô °Ç³×Áö´Â ÀμöÄ¡¸¦ Æ÷ÇÔÇÏ´Â °´Ã¼ ¹è¿. ÀÎÅÍÆäÀ̽º ¸Þ¼µå°¡ Àμö¸¦ ÃëÇÏÁö ¾Ê´Â °æ¿ì, nullÀÌ µÈ´Ù. ¿ø½ÃÇü
Àμö´Â java.lang.Integer
¶Ç´Â java.lang.Boolean
¿Í
°°ÀÌ ÀûÀýÇÑ ¿ø½ÃÇü
·¡ÆÛ Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ ·¦ µÈ´Ù
EventHandler
public static <T> T create(Class <T> listenerInterface, Object target, String action)
action
À»
target
¿¡ Àû¿ëÇϱâ À§ÇÑ listenerInterface
±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå´Â ±× ¿ÜÀÇ °Íº¸´Ù ÀϹÝÀûÀÎ create
¸Þ¼µåÀÇ ±¸Çö°ú null
°ªÀ» ¹Þ´Â eventPropertyName
¹× listenerMethodName
¸¦ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ ±¸ÇöµË´Ï´Ù.
ÀÌÇÏ´Â dialog.show()
¸¦ »ç¿ëÇØ, JDialog
¸¦ Ç¥½ÃÇÏ´Â ActionListener
¸¦ ÀÛ¼ºÇÏ´Â ¿¹ÀÔ´Ï´Ù.
EventHandler.create(ActionListener.class, dialog, "show")
listenerInterface
- ÀÛ¼ºµÈ ÇÁ·Ï½Ã¸¦ ÀÌ¿ëÇÏ´Â ¸®½º³Ê ÀÎÅÍÆäÀ̽ºtarget
- ¾×¼ÇÀ» ½ÇÇàÇÏ´Â °´Ã¼action
- Ÿ°Ù»óÀÇ Ãâ·Â°¡´ÉÇÑ ÇÁ·ÎÆÛƼ ¶Ç´Â ¸Þ¼µåÀÇ À̸§
listenerInterface
¸¦ ±¸ÇöÇÏ´Â °´Ã¼create(Class, Object, String, String)
public static <T> T create(Class <T> listenerInterface, Object target, String action, String eventPropertyName)
eventPropertyName
°ªÀ» ¹®ÁßÀÇ ¸¶Áö¸· ¸Þ¼µåÀÎ action
(target
¿¡ Àû¿ëµÈ´Ù)¿¡ °Ç³×ÁÖ±â À§ÇÑ listenerInterface
±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå´Â º¸´Ù ÀϹÝÀûÀÎ create
¸Þ¼µåÀÇ ±¸Çö°ú null
°ªÀ» ¹Þ´Â listenerMethodName
¸¦ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ ±¸ÇöµË´Ï´Ù.
´ÙÀ½ÀÇ Äڵ带 »ç¿ëÇØ, JLabel
ÅØ½ºÆ®¸¦ ¼ö½Å À̺¥Æ®ÀÇ JTextField
¼Ò½ºÀÇ ÅØ½ºÆ®Ä¡·Î ¼³Á¤ÇÏ´Â °Í °°Àº ActionListener
¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
À̰ÍÀº ´ÙÀ½ÀÇ ÄÚµå¿Í °°½À´Ï´Ù.EventHandler.create(ActionListener.class, label, "text", "source.text");
//Equivalent code using an inner class instead of EventHandler.label.setText((JTextField(event.getSource())). getText())
listenerInterface
- ÀÛ¼ºµÈ ÇÁ·Ï½Ã¸¦ ÀÌ¿ëÇÏ´Â ¸®½º³Ê ÀÎÅÍÆäÀ̽ºtarget
- ¾×¼ÇÀ» ½ÇÇàÇÏ´Â °´Ã¼action
- Ÿ°Ù»óÀÇ Ãâ·Â°¡´ÉÇÑ ÇÁ·ÎÆÛƼ ¶Ç´Â ¸Þ¼µåÀÇ À̸§eventPropertyName
- ¼ö½Å À̺¥Æ®ÀÇ Àбâ
°¡´ÉÇÑ ÇÁ·ÎÆÛƼÀÇ (¿ÏÀü ÁöÁ¤µÈ) À̸§
listenerInterface
¸¦ ±¸ÇöÇÏ´Â °´Ã¼create(Class, Object, String, String, String)
public static <T> T create(Class <T> listenerInterface, Object target, String action, String eventPropertyName, String listenerMethodName)
listenerMethodName
¶ó´Â À̸§ÀÇ ¸Þ¼µå·ÎºÎÅÍ, À̺¥Æ®½ÄÀÇ °ª eventPropertyName
¸¦ ¹®ÁßÀÇ ¸¶Áö¸· ¸Þ¼µå action
(target
¿¡ Àû¿ëµÈ´Ù)¿¡ °Ç³×ÁÖ±â À§ÇÑ listenerInterface
±¸ÇöÀ» ÀÛ¼ºÇÕ´Ï´Ù.
eventPropertyName
°¡ null
ÀÎ °æ¿ì, ±¸ÇöÀº, action
·Î
ÁöÁ¤µÈ À̸§ÀÇ ¸Þ¼µå¸¦ È£ÃâÇÕ´Ï´Ù. EventObject
¸¦ ¹Þ¾ÆµéÀÌ´Â ¸Þ¼µå°¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀº °æ¿ì, ÀÌ ¾×¼ÇÀº EventObject
¶Ç´Â °°Àº À̸§ÀÇ Àμö ¾øÀ½ÀÇ ¸Þ¼µå¸¦ ÃëÇÕ´Ï´Ù.
listenerMethodName
°¡ null
ÀÎ °æ¿ì´Â ÀÎÅÍÆäÀ̽º³»ÀÇ ¸ðµç ¸Þ¼µå°¡target
»ó¿¡¼ ½ÇÇàµÇ´Â action
À»
Æ®¸®°Å ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î
mouse button¸¦ ´©¸¦ ¶§¸¶´Ù Ÿ°Ù °´Ã¼ÀÇ origin
ÇÁ·ÎÆÛƼ¸¦ ¼ö½ÅÇÏ´Â MouseEvent
Àå¼Ò (mouseEvent.getPoint()
°ª)·Î ¼³Á¤ÇÏ´Â MouseListener
¸¦ ÀÛ¼ºÇÏ°í ½ÍÀº °æ¿ì´Â ´ÙÀ½°ú °°ÀÌ ±â¼úÇÕ´Ï´Ù.
À̰ÍÀº,EventHandler.create(MouseListener.class, "mousePressed", target, "origin", "point");
mousePressed
¸¦ Á¦¿ÜÇÏ´Â ¸ðµç ¸Þ¼µå°¡ Á¶ÀÛ ºÒ°¡´ÉÇÑ MouseListener
±â¼ú°ú °°½À´Ï´Ù.
//Equivalent code using an inner class instead of EventHandler.new MouseAdapter() { public void mousePressed(MouseEvent e) { target.setOrigin(e.getPoint()); }}
listenerInterface
- ÀÛ¼ºµÈ ÇÁ·Ï½Ã¸¦ ÀÌ¿ëÇÏ´Â ¸®½º³Ê ÀÎÅÍÆäÀ̽ºtarget
- ¾×¼ÇÀ» ½ÇÇàÇÏ´Â °´Ã¼action
- Ÿ°Ù»óÀÇ Ãâ·Â°¡´ÉÇÑ ÇÁ·ÎÆÛƼ ¶Ç´Â ¸Þ¼µåÀÇ À̸§eventPropertyName
- ¼ö½Å À̺¥Æ®ÀÇ Àбâ
°¡´ÉÇÑ ÇÁ·ÎÆÛƼÀÇ (¿ÏÀü ÁöÁ¤µÈ) À̸§listenerMethodName
- ¾×¼ÇÀ» Æ®¸®°Å ÇÏ´Â ¸®½º³Ê ÀÎÅÍÆäÀ̽º³»ÀÇ ¸Þ¼µåÀÇ À̸§
listenerInterface
¸¦ ±¸ÇöÇÏ´Â °´Ã¼EventHandler
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.