¿©·¯ºÐÀÌ FrameÀ» »õ·Î ¸¸µé¾úÀ» ¶§ FrameÀ» Á¾·áÇÒ ¼ö ¾øÀ» °ÍÀÔ´Ï´Ù. ±× ÀÌÀ¯´Â AWTȯ°æ¿¡¼ ¸ðµç À̺¥Æ®ÀÇ Ã³¸®´Â »ç¿ëÀÚ°¡ Á÷Á¢ ±¸ÇöÇØ ÁÖ¾î¾ß Çϱ⠶§¹®ÀÔ´Ï´Ù. ½ÉÁö¾î À©µµ¿ì Á¾·á À̺¥Æ®±îÁöµµ ±¸ÇöÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. ¹°·Ð, À̺¥Æ®¿¡ ´ëÇØ¼´Â AWT Event¸ðµ¨¿¡¼ ´Ù·ç°Ô µÇ°ÚÁö¸¸ ÀÌ Àý¿¡¼´Â °£´ÜÇÑ À©µµ¿ì Á¾·á À̺¥Æ®¸¸À» ¼³¸íÇϵµ·Ï ÇϰڽÀ´Ï´Ù. Frame¿¡ Event¸¦ ÷ºÎÇϱâ À§Çؼ´Â ÀÏ´Ü Event Listener¸¦ ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ±×¸®°í, ÀÌ À̺¥Æ®¸¦ Frame¿¡ µî·ÏÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. Áï, ´ÙÀ½°ú °°Àº ÀýÂ÷¸¦ °ÅÃÄ¾ß ÇÕ´Ï´Ù.
n WindowListener ±¸Çö
n WindowListener¸¦ Frame¿¡ µî·Ï
FrameÀ» Á¾·áÇϱâ À§Çؼ ¿ì¼±ÀûÀ¸·Î WindowListener¸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù. ±×¸®°í ±¸ÇöµÈ WindowListener¸¦ ÇØ´ç Ŭ·¡½º¿¡ µî·ÏÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. ¸ÕÀú, WindowListener¸¦ ±¸ÇöÇϱâ À§Çؼ´Â WindowListener³»¿¡ ÀÖ´Â Ãß»ó¸Þ¼µåºÎÅÍ ¾Ë¾Æ¾ß°ÚÁÒ. WindowListenerÀÎÅÍÆäÀ̽ºÀÇ ³»ºÎ¿¡ ±¸ÇöµÇÁö ¾ÊÀº Ãß»ó ¸Þ¼µå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
n public void windowActivated(WindowEvent e): À©µµ¿ì°¡ Ȱ¼ºÈµÇ¾úÀ» ¶§ È£Ãâ.
n public void windowClosed(WindowEvent e): À©µµ¿ì°¡ ´ÝÇûÀ» ¶§ È£Ãâ.
n public void windowClosing(WindowEvent e): À©µµ¿ì°¡ ´ÝÈ÷°í ÀÖÀ» ¶§ È£Ãâ.
n public void windowDeactivated(WindowEvent e): À©µµ¿ì°¡ ºñȰ¼ºÈµÇ¾úÀ» ¶§ È£Ãâ.
n public void windowDeiconified(WindowEvent e): À©µµ¿ì°¡ Á¤»óȵǾúÀ» ¶§ È£Ãâ.
n public void windowIconified(WindowEvent e): À©µµ¿ì°¡ ¾ÆÀÌÄÜȵǾúÀ» ¶§ È£Ãâ.
n public void windowOpened(WindowEvent e): À©µµ¿ì°¡ ¿·ÈÀ» ¶§ È£Ãâ.
7°³ÀÇ ¸Þ¼µå¸¦ ÀüºÎ ±¸ÇöÇÏ´Â ¹æ¹ýÀº ¿©·¯ºÐµéµµ ¾Æ½Ã´Ù½ÃÇÇ implements WindowListener¶ó´Â °ÍÀ» »ç¿ëÇÏ½Ã°í ¸ðµç ¸Þ¼µåµéÀ» ±¸ÇöÇÏ½Ã¸é µË´Ï´Ù. ±×¸®°í ÀÌ WindowListener¸¦ µî·ÏÇÏ¸é µÇ´Â °ÍÀÔ´Ï´Ù. Á÷Á¢ ¿¹Á¦¸¦ »ìÆìº¸µµ·Ï ÇÏÁÒ.
ExitEventFrame.java(À©µµ¿ì Á¾·á À̺¥Æ® Å×½ºÆ®) |
import java.awt.*; import java.awt.event.*; public class ExitEventFrame extends Frame implements WindowListener{ public ExitEventFrame (){ this.addWindowListener(this); } public void windowClosing(WindowEvent e){ System.exit(0); } public void windowActivated(WindowEvent e){} public void windowClosed(WindowEvent e){} public void windowDeactivated(WindowEvent e){} public void windowDeiconified(WindowEvent e){} public void windowIconified(WindowEvent e){} public void windowOpened(WindowEvent e){} public static void main (String args[]){ ExitEventFrame f = new ExitEventFrame(); f.setSize(200,200); f.setBackground(Color.blue); f.setVisible(true); } } |
C:\JavaExample\13>javac ExitEventFrame.java C:\JavaExample\13>java ExitEventFrame |
ExitEventFrameŬ·¡½º¿¡ implements WindowListener¸¦ ÇÑ ÈÄ, ¸ðµç ¸Þ¼µå¸¦ ÀüºÎ ±¸Çö ÇÏ¿´½À´Ï´Ù. ±×¸®°í windowClosing¸Þ¼µå¿¡ ½ÇÁ¦ Á¾·á°¡ µÇ±â À§ÇÑ Äڵ带 µü ÇÑ ÁÙ Ãß°¡Çϰí ÀÖ½À´Ï´Ù.
n System.exit(0);à¿øµµ¿ì Á¾·á ¸í·É
ÀÚ! ±×·¸´Ù¸é ¸ðµç ÀÛ¾÷ÀÌ ¿Ï·á µÇ¾ú½À´Ï´Ù. ExitEventFrameÀº µÎ °¡Áö Ŭ·¡½º¸¦ Áߺ¹»ó¼ÓÇϰí ÀÖ½À´Ï´Ù. Frame°ú WindowListener¸¦ µ¿½Ã¿¡ »ó¼ÓÇϰí ÀÖ´Â °ÍÀÔ´Ï´Ù. »ó¼Ó¸¸ µÑÀ» ÇÒ »Ó WindowListener°¡ ½ÇÁ¦ ¾îµð¿¡ »ç¿ëÇÒ Áö´Â ¸í½ÃÇÏÁö ¾Ê¾Ò½À´Ï´Ù. ±×·¸ÁÒ. Á¤È®ÇÏ°Ô WindowListener¸¦ ÀåÂøÇØ¾ß »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°Àº ±¸¹®À» ÷ºÎÇÏ¸é ¸ðµç ÀÛ¾÷Àº ¸¶¹«¸® µË´Ï´Ù.
n this.addWindowListener(this);
ÀÌ ±¸¹®ÀÌ ÇØ¼®ÀÌ ¾ÈµÈ´Ù±¸¿ä. addWindowListener¸Þ¼µåÀÇ ¿øÇüÀ» Çѹø º¸µµ·Ï ÇϰڽÀ´Ï´Ù. FrameŬ·¡½ºÀÇ ¸â¹ö¸Þ¼µå addWindowListenerÀÇ ¿øÇüÀº ´ÙÀ½°ú °°½À´Ï´Ù.
n public void addWindowListener(WindowListener l)
ÀÌ ¸Þ¼µå´Â Frame¿¡ WindowListener¸¦ µî·ÏÇÏ´Â ¸Þ¼µåÀÔ´Ï´Ù. ±×¸®°í addWindowListener¸Þ¼µåÀÇ ¸Å°³º¯¼ö´Â WindowListener°¡ µé¾î°¡¾ß ÇÕ´Ï´Ù. ±×·±µ¥ this¸¦ ³Ö¾î ÁÖ°í ÀÖ½À´Ï´Ù. ±¸¹®Àº ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ¸Å°³º¯¼ö¿¡ ÇÒ´çÀÌ µÉ °ÍÀÔ´Ï´Ù.
n WindowListener l ©¬ this;
thisÀÎ ExitEventFrame´Â µÎ°³ÀÇ Å¬·¡½º¸¦ Áߺ¹ »ó¼ÓÇϰí ÀÖ½À´Ï´Ù. ¾Æ¹öÁö°¡ µÑÀÌÁÒ. ÀÌ ±¸¹®ÀÌ ¼º¸³ÇÏ´Â °ÍÀº ¹Ù·Î ¾÷ij½ºÆÃÀÇ ¿ø¸®ÀÔ´Ï´Ù. »óÀ§ Ŭ·¡½º·Î ij½ºÆÃÀÌ °¡´ÉÇÏ´Ù´Â °ÍÀ» ÀÌ¹Ì ¿ì¸®´Â 5Àå¿¡¼ ¹è¿ü½À´Ï´Ù. ÇöÀç this´Â ExitEventFrameÀ̸ç ExitEventFrameÀº WindowListenerµµ µÉ ¼ö ÀÖ°í Frameµµ µÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¡¼ WindowListener¸¦ ¸Å°³º¯¼ö·Î ³Ö¾î ÁÖ¾î¾ß ÇÏÁö¸¸ ExitEventFrame ÀÚü¸¦ ³Ö¾îÁ־ ±¸¹®Àº ¼º¸³ÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù.
ÀÎÅÍÆäÀ̽ºµµ ÇϳªÀÇ Å¬·¡½ºÀ̰í ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇßÀ» ¶§ ºÐ¸í ÇϳªÀÇ Å¬·¡½º·Î Á¸ÀçÇÑ´Ù´Â °ÍÀ» ¸í½ÉÇϽñ⠹ٶø´Ï´Ù. ExitEventFrame¿¡ extends FrameÀ» ÇßÁö¸¸ implements WindowListenerµµ »ó¼ÓÀÇ °³³äÀº Æ÷ÇÔ µÇ¾î ÀÖ´Â °ÍÀÔ´Ï´Ù. ÀÎÅÍÆäÀ̽º°¡ Ŭ·¡½º¶ó°í ¸»Çߴµ¥ ¿©·¯ºÐÀÌ Á÷Á¢ ƯÁ¤ ÀÎÅÍÆäÀ̽º ÀÚü¸¸À» ÄÄÆÄÀÏ ÇØ º¸½Ê½Ã¿À. ´ç¿¬È÷ .classÆÄÀÏÀÌ »ý¼ºµË´Ï´Ù. ÀÌ Á¤µµ¸é ÀÎÅÍÆäÀ̽ºµµ Ŭ·¡½º¶ó°í ÇÒ ¼ö ÀÖÁö ¾ÊÀ»±î¿ä!
jabookÀúÀÚ¸íÇÔ |
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù3ºÎ ÀúÀÚ:ÃÖ¿µ°ü |