27-1-3.½ºÀ®

½ºÀ®Àº AWTÀÇ È®ÀåÆÇÀÌ¸ç ´ëºÎºÐÀÇ ±¸Á¶¸¦ ±×´ë·Î »ó¼Ó¹ÞµÇ »ç¿ëÇÏ´Â ÄÄÆ÷³ÍÆ®°¡ ´Ù¸£´Ù. °¡·É Frame ´ë½Å ±â´ÉÀÌ ´õ È®ÀåµÈ JFrameÀ» »ç¿ëÇÏ¸ç ¿©·¯ °¡Áö Ãß°¡ ±â´ÉÀÌ Á¦°øµÈ´Ù. À̺¥Æ®¸¦ ó¸®ÇÏÁö ¾Ê¾Æµµ ´ÙÀ½ ¸Þ¼­µå·Î Á¾·á½ÃÀÇ Ã³¸®¸¦ °£ÆíÇÏ°Ô ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

 

void JFrame.setDefaultCloseOperation(int operation)

 

»ç¿ëÀÚ°¡ ´Ý±â ¸í·ÉÀ» ¼±ÅÃÇÒ ¶§ÀÇ µ¿ÀÛÀ» ´ÙÀ½ Àμö·Î ÁöÁ¤ÇÑ´Ù.

 

Àμö

¼³¸í

DO_NOTHING_ON_CLOSE

¾Æ¹«°Íµµ ÇÏÁö ¾Ê´Â´Ù.

HIDE_ON_CLOSE

À©µµ¿ì¸¦ ¼û±ä´Ù. ÀÌ °ªÀÌ µðÆúÆ®ÀÌ´Ù.

DISPOSE_ON_CLOSE

ÇÁ·¹ÀÓÀ» ¼û±â°í ÇØÁ¦ÇÑ´Ù.

EXIT_ON_CLOSE

System.exit ¸Þ¼­µå¸¦ È£ÃâÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥À» Á¾·áÇÑ´Ù.

 

µðÆúÆ®´Â HIDE_ON_CLOSE¿©¼­ À©µµ¿ì¸¦ ¼û±â±â¸¸ ÇÒ »Ó ÇÁ·Î¼¼½º´Â ±×´ë·Î »ì¾Æ ÀÖ´Ù. ¸ÞÀÎ À©µµ¿ì¸¦ ´ÝÀ» ¶§ ÀÀ¿ë ÇÁ·Î±×·¥À» ¿ÏÀüÈ÷ Á¾·áÇÏ·Á¸é EXIT_ON_CLOSE·Î ÁöÁ¤ÇÑ´Ù. AWT¿¡ ºñÇØ ¼±¾ð¸¸À¸·Î ´Ý±â µ¿ÀÛÀ» ó¸®ÇÒ ¼ö ÀÖ¾î ¼Ò½º°¡ °£´ÜÇÏ´Ù. ´ÙÀ½Àº âÀ» »ý¼ºÇÏ°í È­¸é¿¡ Ç¥½ÃÇÏ´Â °¡Àå ´Ü¼øÇÑ ½ºÀ® ¿¹Á¦ÀÌ´Ù.

 

swing

import java.awt.*;

import javax.swing.*;

 

class JavaTest {

      public static void main(String[] args) {

             JFrame frame = new JFrame("First Swing Application");

             frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

             frame.setPreferredSize(new Dimension(300,200));

             frame.setLocation(500, 500);

             frame.pack();

             frame.setVisible(true);

      }

}

 

JFrame °´Ã¼¸¦ »ý¼ºÇ쵂 Àμö·Î ŸÀÌƲ ¹Ù¿¡ Ãâ·ÂÇÒ ¹®ÀÚ¿­À» ÁØ´Ù. ´ÝÀ» ¶§ÀÇ µ¿ÀÛÀ» ÀÀ¿ë ÇÁ·Î±×·¥ Á¾·á(EXIT_ON_CLOSE)·Î ÁöÁ¤ÇÏ°í ´ÙÀ½ ¸Þ¼­µå·Î À©µµ¿ìÀÇ Å©±â¿Í À§Ä¡¸¦ ÁöÁ¤ÇÑ´Ù.

 

void setPreferredSize(Dimension preferredSize)

void setLocation(int x, int y)

 

pack ¸Þ¼­µå´Â ÁöÁ¤ÇÑ Å©±â¿Í Â÷ÀϵåÀÇ ·¹À̾ƿôÀ» °í·ÁÇÏ¿© À©µµ¿ìÀÇ Å©±â¸¦ Á¶Á¤ÇÑ´Ù. Å©±â¿Í À§Ä¡¸¦ ÁöÁ¤ÇÑ ÈÄ À©µµ¿ì¸¦ º¸ÀÌ°Ô Çϸé È­¸é¿¡ ³ªÅ¸³­´Ù.

À̵¿, Å©±â Á¶Á¤, ÃÖ´ë, ÃÖ¼ÒÈ­´Â ¹°·ÐÀÌ°í ŸÀÌƲ ¹ÙÀÇ X ¹öÆ° Ŭ¸¯ ¶Ç´Â Alt + F4 ´ÜÃàÅ° ÀÔ·ÂÀ¸·Î À©µµ¿ì¸¦ ¹Ù·Î Á¾·áÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀÚ¿Í »óÈ£ ÀÛ¿ëÇÒ ¼ö ÀÖ´Â »óÅÂÀÌÁö¸¸ ¾ÆÁ÷ ÄÄÆ÷³ÍÆ®°¡ ¾ø¾î º°´Ù¸¥ À¯¿ë¼ºÀº ¾ø´Ù. ¾ÕÀ¸·ÎÀÇ ¿¹Á¦ Á¦ÀÛ¿¡ ÀÌ ±¸Á¶¸¦ °è¼Ó »ç¿ëÇÑ´Ù.