¼Ò¼³°°ÀºÀÚ¹Ù3ºÎ  13Àå AWT  13.10.2 ÆÐ³Î(Panel)  

 

13.10.2 ÆÐ³Î(Panel)

 

PanelÀº java.awtÆÐŰÁöÀÇ Å¬·¡½ºÀ̸ç, ContainerŬ·¡½º¸¦ »ó¼Ó ¹Þ°í ÀÚÁÖ »ç¿ëµÇÁö´Â ¾ÊÁö¸¸ AccessibleÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ¿©µµ »ç¿ëµÇ¾î Áý´Ï´Ù. ´ÙÀ½Àº API¿¡¼­ ¹ßÃéÇÑ ±¸¹®ÀÔ´Ï´Ù.

 

n        public class Panel extends Container implements Accessible

 

Layout Manager¸¦ »ç¿ëÇÏ¿© ÇÏÀ§ ÄÄÆ÷³ÍÆ®¸¦ ³»ºÎ¿¡ ¹èÄ¡ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·± Ŭ·¡½º·Î ÀÌ¿ëµÇ¾îÁö´Â, ´ëÇ¥ÀûÀΠŬ·¡½º°¡ ¹Ù·Î AppletÀÔ´Ï´Ù. À̰Ϳ¡ °üÇÑ ¿¹Á¦´Â AppletÀå¿¡¼­ Âü°íÇϽñ⠹ٶø´Ï´Ù. ±×¸®°í, PanelÀÇ LayoutÀº FlowLayoutÀ» ±âº»À¸·Î ÇÕ´Ï´Ù. PanelÀº AWT¿¡¼­ ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â ÄÁÅ×ÀÌ³Ê ÄÄÆ÷³ÍÆ® Áß¿¡ Çϳª·Î, °¡Àå ºó¹øÇÏ°Ô »ç¿ëµÇ¾î Áö°í ÀÖ´Â ¸¸Å­ È®½ÇÈ÷ ÀÌÇØÇÏ°í ´ÙÀ½ ÀåÀ¸·Î ³Ñ¾î°¡½Ã±â ¹Ù¶ø´Ï´Ù.

 

 À̹ø ¿¹Á¦´Â PanelÀÇ °´Ã¼ p1°ú p2¸¦ »ý¼ºÇϰí, ±× À§¿¡ Button °´Ã¼¸¦ Ãß°¡ÇÏ¿© Frame¿¡ ´õÇÏ´Â °£´ÜÇÑ ¿¹Á¦ÀÔ´Ï´Ù. FrameÀÇ ±âº»ÀûÀÎ ¸Þ¼­µåµé¸¸ ¾Õ¿¡¼­ Àß ÀÌÇØÇÏ¼Ì´Ù¸é º° ¹«¸® ¾øÀ» °ÍÀÔ´Ï´Ù.

 

PanelTest.java(PanelÀ» Å×½ºÆ®Çϱâ À§ÇÑ ¿¹Á¦)

import java.awt.*;

class PanelTest extends Frame {

   public PanelTest() {

       Panel p1 = new Panel();

       p1.add(new Button("¹öư 1"));

       p1.add(new Button("¹öư 2"));

       p1.setBackground(Color.red);

       add("North", p1);

       Panel p2 = new Panel();

       p2.add(new Button("¹öư 3"));

       p2.add(new Button("¹öư 4"));

       p2.setBackground(Color.yellow);

       add("Center", p2);

   }

   public static void main(String[] args) {

       PanelTest f = new PanelTest();

      f.setTitle("Panel ¿¹Á¦");

       f.setSize(150, 100);

       f.show();

   }

}

C:\JavaExample\13>javac PanelTest.java

C:\JavaExample\13>java PanelTest

 

º°¹Ý ¼³¸íÀÌ ÇÊ¿ä ¾ø´Â ¿¹Á¦ÀÔ´Ï´Ù. ¸ÕÀú, PanelÀ» »ç¿ëÇϱâ À§ÇØ java.awtÆÐŰÁö¸¦ import ½ÃÄ×½À´Ï´Ù. PanelÀÇ °´Ã¼ p1°ú p2¸¦ »ý¼ºÇؼ­ p1¿¡´Â ¹öư1, ¹öư2¸¦ Ãß°¡Çϰí, p2¿¡´Â ¹öư3, ¹öư4¸¦ Ãß°¡ÇÕ´Ï´Ù. À̶§ Panel°´Ã¼ÀÇ ±¸º°À» À§ÇØ setBackground() ¸Þ¼­µå¸¦ »ç¿ëÇØ¼­ ¹è°æ»ö»óÀ» ÀÔ·ÂÇß½À´Ï´Ù. ±×·± ÈÄ¿¡ setSize()¿Í show()¸Þ¼­µå¸¦ ÀÌ¿ëÇØ¼­ FrameÀ¸·Î È­¸é¿¡ Ãâ·ÂÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ ºÎºÐ¿¡¼­´Â PanelÀÇ °´Ã¼¸¦ »ý¼ºÇÏ´Â ÄÚµå¿Í Panel¿¡ ¹è°æ»ö»óÀ» ÀÔ·ÂÇÏ´Â Á¤µµ¸¸ ¾Ë°í ³Ñ¾î°¡¸é µÇ°Ú½À´Ï´Ù.

 

n        Panel p1 = new Panel();

n        p1.setBackground(Color.red);

 

¹è°æ »ö»óÀ» ÀÔ·ÂÇÏ´Â ºÎºÐ¿¡¼­´Â ComponentŬ·¡½ºÀÇ setBackground()¸Þ¼­µå¸¦ »ç¿ëÇϸç, ÀÎÀڷδ ColorŬ·¡½ºÀÇ ÇʵåÀÎ red¸¦ »ç¿ëÇØ¼­ »ö»óÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù. À̿ܿ¡µµ RGBÄڵ带 »ç¿ëÇØ¼­ »ö»óÀ» ³ªÅ¸³¾ ¼öµµ ÀÖ½À´Ï´Ù.

 

PanelÀº ÄÄÆ÷³ÍÆ® Áß¿¡¼­µµ ºó¹øÇÏ°Ô ¾²ÀÌ´Â ÄÁÅ×ÀÌ³Ê ÄÄÆ÷³ÍÆ®·Î¼­ AWT ÆÐŰÁöÀÇ Å¬·¡½ºÀÔ´Ï´Ù. FlowLayoutÀÌ ±âº»ÀûÀÎ Layout¸Å´ÏÀú·Î »ç¿ëµÇ°í, PanelŬ·¡½º´Â È­¸é¿¡ ³ªÅ¸³»´Â ¸Þ¼­µå°¡ ¾ø±â ¶§¹®¿¡ ´ëºÎºÐ FrameÀ» »ó¼Ó ¹Þ¾Æ¼­ »ç¿ëµÇ´Â Ư¡À» °¡Áö°í ÀÖ½À´Ï´Ù. È­¸éÀÇ ±¸¼ºÀ» º¸´Ù Â¥ÀÓ»õ ÀÖ°Ô ÇÏ·Á¸é PanelÀ» Àß È°¿ëÇØ¾ß ÇÏÁö ¾ÊÀ»±î¿ä?

 

Panel »ý¼ºÀÚ¸Þ¼­µå

public Panel(LayoutManager layout) : ÀÎÀÚ°¡ ¾øÀ¸¸é ±âº» Layout ¸Å´ÏÀúÀÎ FlowLayoutÀ» »ç¿ëÇÏ´Â °ÍÀ̰í, µû·Î LayoutÀ» ¸í½ÃÇÒ ¶§´Â ±×°ÍÀÇ Æ¯Â¡´ë·Î Á¤·ÄµÈ´Ù. À̿ܿ¡µµ 2°³ÀÇ ¸Þ¼­µå°¡ ´õ ÀÖÀ¸³ª ÀÚÁÖ »ç¿ëÇÏÁö ¾Ê´Â °ü°è·Î ¼³¸íÀº »ý·«ÇϰڽÀ´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù3ºÎ
ÀúÀÚ:ÃÖ¿µ°ü