Posted by ±è´öÅ on April 15, 1997 at 01:41:19:
In Reply to: [Áú¹®] Menu¿Í Button¿¡ ´ëÇؼ posted by ¹Ú¿ë·Ä on April 14, 1997 at 12:57:17:
Á¤È®ÇÏ°Ô´Â ÇÁ·¹ÀÓ¸¸ÀÌ ¸Þ´º¹Ù¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù.
µû¶ó¼, ÀÚ¹Ù ¾ÖÇø´¿¡¼ ¸Þ´º¸¦ ¸¸µå´Â ¹æ¹ýÀº 2°¡Áö°¡ Á¸ÀçÇÕ´Ï´Ù.
1. ÇÁ·¹ÀÓÀ» ¸¸µé°í, ±× ÇÁ·¹ÀӾȿ¡ ¸Þ´º¹Ù¸¦ ¸¸µé°í, ±× ¸Þ´º¹Ù¿¡ ¸Þ´º¸¦ ÷°¡ÇÑ´Ù.
2. JDK1.1ÀÇ PopupMenu´Â ¾î¶°ÇÑ ÄÄÆ÷³ÍÆ®³»¿¡¼µµ ¸¸µé ¼ö ÀÖÀ¸¹Ç·Î,
¾ÖÇø´ ÄÄÆ÷³ÍÆ®³»¿¡¼µµ ¸¸µé ¼ö ÀÖ´Ù.
µû¶ó¼, ´ÙÀ½ ¿¹Á¦ÀÇ PopupMenu¿Í Button ÄÄÆ÷³ÍÆ®µîÀ» Á¶ÇÕÇÏ¿©
¸Þ´º¹Ù¿Í °°Àº È¿°ú¸¦ ¸¸µé ¼öµµ ÀÖ½À´Ï´Ù.
JDK1.1Àº ÀÚ¹Ù ¾ð¾î ÀÚü¸¦ È®ÀåÇؼ inner class, local class, anonymous class ¹®¹ýÀ»
Á¦°øÇÕ´Ï´Ù. ÀÌ´Â »õ·Î¿î À̺¥Æ® ó¸® ¹æ½ÄÀ» µû¸£¸é¼, º¸´Ù Æí¸®ÇÏ°í,
À¯¿¬ÇÑ À̺¥Æ® ÇÁ·Î±×·¡¹ÖÀ» ÇÏ´Â µ¥ ÀÌ¿ëµÉ ¼ö ÀÖ½À´Ï´Ù. (´Ù¼Ò, Çò°¥¸®½ÇÁöµµ...)
import java.awt.*;
import java.awt.event.*;class PopupMenuTest extends Frame
{ public PopupMenuTest()
{ setTitle("Menu Test");
final PopupMenu fileMenu = new PopupMenu("File");
fileMenu.add(new MenuItem("New"));
fileMenu.add(new MenuItem("Open"));
fileMenu.addSeparator();
fileMenu.add(new MenuItem("Save"));
fileMenu.add(new MenuItem("Save As"));
fileMenu.addSeparator();
fileMenu.add(new MenuItem("Print"));
fileMenu.addSeparator();
MenuItem quit = new MenuItem("Quit");
fileMenu.add(quit);
quit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ev)
{ System.exit(0); }
});
add(fileMenu);addMouseListener( new MouseAdapter()
{ public void mousePressed(MouseEvent ev)
{ fileMenu.show(ev.getComponent(), ev.getX(), ev.getY());
}
});
}
public static void main(String args[])
{ PopupMenuTest f = new PopupMenuTest();
f.setSize(300, 200);
f.setVisible(true);
}
}