ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
Java±à³Ì˼ÏëµÚ4°æ[ÖÐÎÄ°æ](PDF¸ñʽ)-µÚ102²¿·Ö
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡421¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡423¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡TextField¡¡t¡¡=¡¡new¡¡TextField£¨100£©£»¡¡¡¡
¡¡¡¡Choice¡¡c¡¡=¡¡new¡¡Choice£¨£©£»¡¡¡¡
¡¡¡¡Button¡¡b¡¡=¡¡new¡¡Button£¨¡¨Add¡¡items¡¨£©£»¡¡¡¡
¡¡¡¡int¡¡count¡¡=¡¡0£»¡¡¡¡
¡¡¡¡public¡¡void¡¡init£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡t¡£setEditable£¨false£©£»¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡4£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡c¡£addItem£¨description£§count£«£«£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨t£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨c£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨b£©£»¡¡¡¡
¡¡¡¡¡¡¡¡c¡£addItemListener£¨new¡¡CL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡b¡£addActionListener£¨new¡¡BL£¨£©£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡CL¡¡implements¡¡ItemListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡itemStateChanged£¨ItemEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨index£º¡¡¡¨¡¡£«¡¡¡¡c¡£getSelectedIndex£¨£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£«¡¡¡¨¡¡¡¡¡¡¡¨¡¡£«¡¡e¡£toString£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡BL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨count¡¡¡¶¡¡description¡£length£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡c¡£addItem£¨description£§count£«£«£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡ChoiceNew¡¡applet¡¡=¡¡new¡¡ChoiceNew£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡Frame¡¡aFrame¡¡=¡¡new¡¡Frame£¨¡¨ChoiceNew¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£addWindowListener£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡WindowAdapter£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡public¡¡void¡¡windowClosing£¨WindowEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£add£¨applet£»¡¡BorderLayout¡£CENTER£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setSize£¨750£»100£©£»¡¡¡¡
¡¡¡¡¡¡¡¡applet¡£init£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡applet¡£start£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setVisible£¨true£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
Õâ¸ö³ÌÐòÖÐûʲôÌرðÐÂÓ±µÄ¶«Î÷£¨³ýÁË¡¡Java¡¡1¡£1¡¡°æµÄUI¡¡ÀàÀïÉÙÊý¼¸¸öÖµµÃ¹Ø×¢µÄȱÏÝ£©¡£¡¡¡¡
¡¡¡¡
5¡£¡¡ÁÐ±í¡¡¡¡
ÎÒÃÇÏû³ýÁË¡¡Java¡¡1¡£0¡¡ÖÐList¡¡Éè¼ÆµÄÒ»¸öȱÏÝ£¬¾ÍÊÇ¡¡List¡¡²»ÄÜÏñÎÒÃÇÏ£ÍûµÄÄÇÑù¹¤×÷£ºËü»áÓëµ¥»÷ÔÚÒ»¸öÁС¡
±íÔªËØÉÏ·¢Éú³åÍ»¡£¡¡¡¡
¡¡¡¡
//£º¡¡ListNew¡£java¡¡¡¡
//¡¡Java¡¡1¡£1¡¡Lists¡¡are¡¡easier¡¡to¡¡use¡¡¡¡
import¡¡java¡£awt¡£*£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡422¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡424¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
import¡¡java¡£awt¡£event¡£*£»¡¡¡¡
import¡¡java¡£applet¡£*£»¡¡¡¡
¡¡¡¡
public¡¡class¡¡ListNew¡¡extends¡¡Applet¡¡£û¡¡¡¡
¡¡¡¡String£§£§¡¡flavors¡¡=¡¡£û¡¡¡¨Chocolate¡¨£»¡¡¡¨Strawberry¡¨£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Vanilla¡¡Fudge¡¡Swirl¡¨£»¡¡¡¨Mint¡¡Chip¡¨£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Mocha¡¡Almond¡¡Fudge¡¨£»¡¡¡¨Rum¡¡Raisin¡¨£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Praline¡¡Cream¡¨£»¡¡¡¨Mud¡¡Pie¡¨¡¡£ý£»¡¡¡¡
¡¡¡¡//¡¡Show¡¡6¡¡items£»¡¡allow¡¡multiple¡¡selection£º¡¡¡¡
¡¡¡¡List¡¡lst¡¡=¡¡new¡¡List£¨6£»¡¡true£©£»¡¡¡¡
¡¡¡¡TextArea¡¡t¡¡=¡¡new¡¡TextArea£¨flavors¡£length£»¡¡30£©£»¡¡¡¡
¡¡¡¡Button¡¡b¡¡=¡¡new¡¡Button£¨¡¨test¡¨£©£»¡¡¡¡
¡¡¡¡int¡¡count¡¡=¡¡0£»¡¡¡¡
¡¡¡¡public¡¡void¡¡init£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡t¡£setEditable£¨false£©£»¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡4£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡lst¡£addItem£¨flavors£§count£«£«£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨t£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨lst£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨b£©£»¡¡¡¡
¡¡¡¡¡¡¡¡lst¡£addItemListener£¨new¡¡LL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡b¡£addActionListener£¨new¡¡BL£¨£©£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡LL¡¡implements¡¡ItemListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡itemStateChanged£¨ItemEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡String£§£§¡¡items¡¡=¡¡lst¡£getSelectedItems£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡items¡£length£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡t¡£append£¨items£§i£§¡¡£«¡¡¡¨n¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡BL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨count¡¡¡¶¡¡flavors¡£length£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡lst¡£addItem£¨flavors£§count£«£«£§£»¡¡0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡ListNew¡¡applet¡¡=¡¡new¡¡ListNew£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡Frame¡¡aFrame¡¡=¡¡new¡¡Frame£¨¡¨ListNew¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£addWindowListener£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡WindowAdapter£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡public¡¡void¡¡windowClosing£¨WindowEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£add£¨applet£»¡¡BorderLayout¡£CENTER£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setSize£¨300£»200£©£»¡¡¡¡
¡¡¡¡¡¡¡¡applet¡£init£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡applet¡£start£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setVisible£¨true£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡423¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡425¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
ÎÒÃÇ¿ÉÒÔ×¢Òâµ½ÔÚÁбíÏîÖÐÎÞÐèÌرðµÄÂß¼ÐèҪȥ֧³ÖÒ»¸öµ¥»÷¶¯×÷¡£ÎÒÃÇÕýºÃÏñÎÒÃÇÔÚÆäËüµØ·½Ëù×öµÄÄÇ¡¡
Ñù¸½¼ÓÉÏÒ»¸ö½ÓÊÕÆ÷¡£¡¡¡¡
¡¡¡¡
6¡£¡¡²Ëµ¥¡¡¡¡
Ϊ²Ëµ¥´¦Àíʼþ¿´ÆðÀ´ÊÜÒæÓÚ¡¡Java¡¡1¡£1¡¡°æµÄʼþÄ£ÐÍ£¬µ«¡¡Java¡¡Éú³É²Ëµ¥µÄ·½·¨³£³£Âé·³²¢ÇÒÐèҪһЩÊÖ¹¤¡¡
±àд´úÂë¡£Éú³É²Ëµ¥µÄÕýÈ··½·¨¿´ÆðÀ´Ïñ×ÊÔ´¶ø²»ÊÇһЩ´úÂë¡£ÇëÀÎÀμÇס±à³Ì¹¤¾ß»á¹ã·ºµØΪÎÒÃÇ´¦Àí´´¡¡
½¨µÄ²Ëµ¥£¬Òò´ËÕâ¿ÉÒÔ¼õÉÙÎÒÃǵÄÍ´¿à£¨Ö»ÒªËüÃÇ»áͬÑù´¦Àíά»¤ÈÎÎñ£¡£©¡£ÁíÍ⣬ÎÒÃǽ«·¢Ïֲ˵¥²»Ö§³Ö¡¡
²¢ÇÒ½«µ¼Ö»ìÂÒµÄʼþ£º²Ëµ¥ÏîʹÓÃActionListeners¡¡£¨¶¯×÷½ÓÊÕÆ÷£©£¬µ«¸´Ñ¡¿ò²Ëµ¥ÏîʹÓá¡ItemListeners¡¡
¡¡£¨ÏîÄ¿½ÓÊÕÆ÷£©¡£²Ëµ¥¶ÔÏóͬÑùÄÜÖ§³ÖActionListeners¡¡£¨¶¯×÷½ÓÊÕÆ÷£©£¬µ«Í¨³£²»ÄÇôÓÐÓá£Ò»°ãÀ´Ëµ£¬¡¡
ÎÒÃǻḽ¼Ó½ÓÊÕÆ÷µ½Ã¿¸ö²Ëµ¥Ïî»ò¸´Ñ¡¿ò²Ëµ¥Ïµ«ÏÂÃæµÄÀý×Ó£¨¶ÔÏÈÇ°Àý×ÓµÄÐ޸ģ©ÑÝʾÁËÒ»¸öÁªºÏ²¶×½¡¡
¶à¸ö²Ëµ¥×é¼þµ½Ò»¸öµ¥¶ÀµÄ½ÓÊÕÆ÷ÀàµÄ·½·¨¡£ÕýÏñÎÒÃǽ«¿´µ½µÄ£¬Ëü»òÐí²»ÖµµÃΪÕâ¶ø¼¤ÁÒµØÕùÂÛ¡£¡¡¡¡
¡¡¡¡
//£º¡¡MenuNew¡£java¡¡¡¡
//¡¡Menus¡¡in¡¡Java¡¡1¡£1¡¡¡¡
import¡¡java¡£awt¡£*£»¡¡¡¡
import¡¡java¡£awt¡£event¡£*£»¡¡¡¡
¡¡¡¡
public¡¡class¡¡MenuNew¡¡extends¡¡Frame¡¡£û¡¡¡¡
¡¡¡¡String£§£§¡¡flavors¡¡=¡¡£û¡¡¡¨Chocolate¡¨£»¡¡¡¨Strawberry¡¨£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Vanilla¡¡Fudge¡¡Swirl¡¨£»¡¡¡¨Mint¡¡Chip¡¨£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Mocha¡¡Almond¡¡Fudge¡¨£»¡¡¡¨Rum¡¡Raisin¡¨£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¨Praline¡¡Cream¡¨£»¡¡¡¨Mud¡¡Pie¡¨¡¡£ý£»¡¡¡¡
¡¡¡¡TextField¡¡t¡¡=¡¡new¡¡TextField£¨¡¨No¡¡flavor¡¨£»¡¡30£©£»¡¡¡¡
¡¡¡¡MenuBar¡¡mb1¡¡=¡¡new¡¡MenuBar£¨£©£»¡¡¡¡
¡¡¡¡Menu¡¡f¡¡=¡¡new¡¡Menu£¨¡¨File¡¨£©£»¡¡¡¡
¡¡¡¡Menu¡¡m¡¡=¡¡new¡¡Menu£¨¡¨Flavors¡¨£©£»¡¡¡¡
¡¡¡¡Menu¡¡s¡¡=¡¡new¡¡Menu£¨¡¨Safety¡¨£©£»¡¡¡¡
¡¡¡¡//¡¡Alternative¡¡approach£º¡¡¡¡
¡¡¡¡CheckboxMenuItem£§£§¡¡safety¡¡=¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡CheckboxMenuItem£¨¡¨Guard¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡CheckboxMenuItem£¨¡¨Hide¡¨£©¡¡¡¡
¡¡¡¡£ý£»¡¡¡¡
¡¡¡¡MenuItem£§£§¡¡file¡¡=¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡//¡¡No¡¡menu¡¡shortcut£º¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡MenuItem£¨¡¨Open¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡//¡¡Adding¡¡a¡¡menu¡¡shortcut¡¡is¡¡very¡¡simple£º¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡MenuItem£¨¡¨Exit¡¨£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡MenuShortcut£¨KeyEvent¡£VK_E£©£©¡¡¡¡
¡¡¡¡£ý£»¡¡¡¡
¡¡¡¡//¡¡A¡¡second¡¡menu¡¡bar¡¡to¡¡swap¡¡to£º¡¡¡¡
¡¡¡¡MenuBar¡¡mb2¡¡=¡¡new¡¡MenuBar£¨£©£»¡¡¡¡
¡¡¡¡Menu¡¡fooBar¡¡=¡¡new¡¡Menu£¨¡¨fooBar¡¨£©£»¡¡¡¡
¡¡¡¡MenuItem£§£§¡¡other¡¡=¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡MenuItem£¨¡¨Foo¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡MenuItem£¨¡¨Bar¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡new¡¡MenuItem£¨¡¨Baz¡¨£©£»¡¡¡¡
¡¡¡¡£ý£»¡¡¡¡
¡¡¡¡//¡¡Initialization¡¡code£º¡¡¡¡
¡¡¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡ML¡¡ml¡¡=¡¡new¡¡ML£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡424¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡426¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡CMIL¡¡cmil¡¡=¡¡new¡¡CMIL£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡safety£§0£§¡£setActionmand£¨¡¨Guard¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡safety£§0£§¡£addItemListener£¨cmil£©£»¡¡¡¡
¡¡¡¡¡¡¡¡safety£§1£§¡£setActionmand£¨¡¨Hide¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡safety£§1£§¡£addItemListener£¨cmil£©£»¡¡¡¡
¡¡¡¡¡¡¡¡file£§0£§¡£setActionmand£¨¡¨Open¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡file£§0£§¡£addActionListener£¨ml£©£»¡¡¡¡
¡¡¡¡¡¡¡¡file£§1£§¡£setActionmand£¨¡¨Exit¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡file£§1£§¡£addActionListener£¨ml£©£»¡¡¡¡
¡¡¡¡¡¡¡¡other£§0£§¡£addActionListener£¨new¡¡FooL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡other£§1£§¡£addActionListener£¨new¡¡BarL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡other£§2£§¡£addActionListener£¨new¡¡BazL£¨£©£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡Button¡¡b¡¡=¡¡new¡¡Button£¨¡¨Swap¡¡Menus¡¨£©£»¡¡¡¡
¡¡¡¡public¡¡MenuNew£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡FL¡¡fl¡¡=¡¡new¡¡FL£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡flavors¡£length£»¡¡i£«£«£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡MenuItem¡¡mi¡¡=¡¡new¡¡MenuItem£¨flavors£§i£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡mi¡£addActionListener£¨fl£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡m¡£add£¨mi£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡//¡¡Add¡¡separators¡¡at¡¡intervals£º¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨£¨i£«1£©¡¡£¥¡¡3¡¡==¡¡0£©¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡m¡£addSeparator£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡safety¡£length£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡s¡£add£¨safety£§i£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡f¡£add£¨s£©£»¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡file¡£length£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡f¡£add£¨file£§i£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡mb1¡£add£¨f£©£»¡¡¡¡
¡¡¡¡¡¡¡¡mb1¡£add£¨m£©£»¡¡¡¡
¡¡¡¡¡¡¡¡setMenuBar£¨mb1£©£»¡¡¡¡
¡¡¡¡¡¡¡¡t¡£setEditable£¨false£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨t£»¡¡BorderLayout¡£CENTER£©£»¡¡¡¡
¡¡¡¡¡¡¡¡//¡¡Set¡¡up¡¡the¡¡system¡¡for¡¡swapping¡¡menus£º¡¡¡¡
¡¡¡¡¡¡¡¡b¡£addActionListener£¨new¡¡BL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡add£¨b£»¡¡BorderLayout¡£NORTH£©£»¡¡¡¡
¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡other¡£length£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡fooBar¡£add£¨other£§i£§£©£»¡¡¡¡
¡¡¡¡¡¡¡¡mb2¡£add£¨fooBar£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡BL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡MenuBar¡¡m¡¡=¡¡getMenuBar£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨m¡¡==¡¡mb1£©¡¡setMenuBar£¨mb2£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡else¡¡if¡¡£¨m¡¡==¡¡mb2£©¡¡setMenuBar£¨mb1£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡ML¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡MenuItem¡¡target¡¡=¡¡£¨MenuItem£©e¡£getSource£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡String¡¡actionmand¡¡=¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡425¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡427¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡target¡£getActionmand£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨actionmand¡£equals£¨¡¨Open¡¨£©£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String¡¡s¡¡=¡¡t¡£getText£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡boolean¡¡chosen¡¡=¡¡false£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡flavors¡£length£»¡¡i£«£«£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨s¡£equals£¨flavors£§i£§£©£©¡¡chosen¡¡=¡¡true£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨£¡chosen£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Choose¡¡a¡¡flavor¡¡first£¡¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Opening¡¡¡¨£«¡¡s¡¡£«¡¨¡£¡¡Mmm£»¡¡mm£¡¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡else¡¡if£¨actionmand¡£equals£¨¡¨Exit¡¨£©£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡dispatchEvent£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡new¡¡WindowEvent£¨MenuNew¡£this£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡WindowEvent¡£WINDOW_CLOSING£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡FL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡MenuItem¡¡target¡¡=¡¡£¨MenuItem£©e¡£getSource£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨target¡£getLabel£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡//¡¡Alternatively£»¡¡you¡¡can¡¡create¡¡a¡¡different¡¡¡¡
¡¡¡¡//¡¡class¡¡for¡¡each¡¡different¡¡MenuItem¡£¡¡Then¡¡you¡¡¡¡
¡¡¡¡//¡¡Don't¡¡have¡¡to¡¡figure¡¡out¡¡which¡¡one¡¡it¡¡is£º¡¡¡¡
¡¡¡¡class¡¡FooL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Foo¡¡selected¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡BarL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Bar¡¡selected¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡BazL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Baz¡¡selected¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡CMIL¡¡implements¡¡ItemListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡itemStateChanged£¨ItemEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡CheckboxMenuItem¡¡target¡¡=¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨CheckboxMenuItem£©e¡£getSource£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡String¡¡actionmand¡¡=¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡target¡£getActionmand£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨actionmand¡£equals£¨¡¨Guard¡¨£©£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Guard¡¡the¡¡Ice¡¡Cream£¡¡¡¡¨¡¡£«¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¨Guarding¡¡is¡¡¡¨¡¡£«¡¡target¡£getState£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡else¡¡if£¨actionmand¡£equals£¨¡¨Hide¡¨£©£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡t¡£setText£¨¡¨Hide¡¡the¡¡Ice¡¡Cream£¡¡¡¡¨¡¡£«¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡426¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡428¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¨Is¡¡it¡¡cold£¿¡¡¡¨¡¡£«¡¡target¡£getState£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡¡¡
¡¡¡¡¡¡¡¡MenuNew¡¡f¡¡=¡¡new¡¡MenuNew£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡f¡£addWindowListener£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡WindowAdapter£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡public¡¡void¡¡windowClosing£¨WindowEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý£©£»¡¡¡¡
¡¡¡¡¡¡¡¡f¡£setSize£¨300£»200£©£»¡¡¡¡
¡¡¡¡¡¡¡¡f¡£setVisible£¨true£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
ÔÚÎÒÃÇ¿ªÊ¼³õʼ»¯½Ú£¨ÓÉ×¢½â¡°Initialization¡¡code£º¡±ºóµÄÓÒ´óÀ¨ºÅÖ¸Ã÷£©µÄÇ°Ã沿·ÖµÄ´úÂëͬÏÈÇ°¡¡
¡¡£¨Java¡¡1¡£0¡¡°æ£©°æ±¾Ïàͬ¡£ÕâÀïÎÒÃÇ¿ÉÒÔ×¢Òâµ½ÏîÄ¿½ÓÊÕÆ÷ºÍ¶¯×÷½ÓÊÕÆ÷±»¸½¼ÓÔÚ²»Í¬µÄ²Ëµ¥×é¼þÉÏ¡£¡¡¡¡
Java¡¡1¡£1¡¡Ö§³Ö¡°²Ëµ¥¿ì½Ý¼ü¡±£¬Òò´ËÎÒÃÇ¿ÉÒÔÑ¡ÔñÒ»¸ö²Ëµ¥ÏîÄ¿ÀûÓüüÅÌÌæ´úÊó±ê¡£ÕâÊ®·ÖµÄ¼òµ¥£»ÎÒÃÇÖ»¡¡
ҪʹÓùýÔز˵¥Ïî¹¹½¨Æ÷ÉèÖõڶþ¸ö×Ô±äÁ¿ÎªÒ»¸ö¡¡MenuShortcut¡¡£¨²Ëµ¥¿ì½Ý¼üʼþ£©¶ÔÏó¼´¿É¡£²Ëµ¥¿ì½Ý¼ü¡¡
¹¹½¨Æ÷ÉèÖÃÖØÒªµÄ·½·¨£¬µ±Ëü°´ÏÂʱ²»¿É˼ÒéµØÏÔʾÔڲ˵¥ÏîÉÏ¡£ÉÏÃæµÄÀý×ÓÔö¼ÓÁË¡¡Control¡E¡¡µ½¡°Exit¡¡¡±¡¡¡¡
²Ëµ¥ÏîÖС£¡¡¡¡
ÎÒÃÇͬÑù»á×¢Òâ¡¡setActionmand£¨£©µÄʹÓá£Õâ¿´ËÆÒ»µãÄ°ÉúÒòΪÔÚ¸÷ÖÖÇé¿öÏ¡°action¡¡mand¡±Íêȫͬ¡¡
²Ëµ¥×é¼þÉϵıêÇ©Ò»Ñù¡£ÎªÊ²Ã´²»ÕýºÃʹÓñ
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾Ñé½±Àø£¬ÈÏÕæдԴ´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾Ñé½±ÀøŶ£¡