ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡ÔĶÁ¹ý³Ì·¢ÏÖÈκδíÎóÇë¸æËßÎÒÃÇ£¬Ð»Ð»£¡£¡ ±¨¸æ´íÎó
Ò»ÊÀÊé³Ç ·µ»Ø±¾ÊéĿ¼ ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ½øÈëÊé°É ¼ÓÈëÊéÇ©

Java±à³Ì˼ÏëµÚ4°æ[ÖÐÎÄ°æ](PDF¸ñʽ)-µÚ156ÕÂ

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




¡¡¡¡¡¡¡¡add£¨sb£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String¡¡args£§£§£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡Show¡£inFrame£¨new¡¡Progress£¨£©£»200£»150£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

JProgressBar¡¡Ê®·Ö¼òµ¥£¬µ«¡¡JSlider¡¡È´ÓÐÐí¶àÑ¡ÏÀýÈç·½·¨¡¢´ó»òСµÄ¼ÇºÅ±êÇ©¡£×¢ÒâÔö¼ÓÒ»¸ö´ø±êÌâµÄ¡¡

±ß¿òÊǶàôµÄÈÝÒס£¡¡¡¡



13¡£19¡£13¡¡Ê÷¡¡¡¡



ʹÓÃÒ»¸öJTree¡¡¿ÉÒÔ¼òµ¥µØÏñÏÂÃæÕâÑù±íʾ£º¡¡¡¡

add£¨new¡¡JTree£¨¡¡¡¡

new¡¡Object£§£§¡¡£û¡¨this¡¨£»¡¡¡¨that¡¨£»¡¡¡¨other¡¨£ý£©£©£»¡¡¡¡

Õâ¸ö³ÌÐòÏÔʾÁËÒ»¸öԭʼµÄÊ÷×´Îï¡£Ê÷×´ÎïµÄ¡¡API¡¡ÊǷdz£¾Þ´óµÄ£¬¿ÉÊÇ¡ª¡ªµ±È»ÊÇÔÚSwing¡¡Öеľ޴ó¡£Ëü±í¡¡

Ã÷ÎÒÃÇ¿ÉÒÔ×öÓйØÊ÷×´ÎïµÄÈκÎÊ£¬µ«¸ü¸´ÔÓµÄÈÎÎñ¿ÉÄÜÐèÒª²»ÉÙµÄÑо¿ºÍÊÔÑé¡£ÐÒÔ˵ÄÊÇ£¬ÔÚ¿âÖÐÌṩÁË¡¡

Ò»¸öÍ×Э£º¡°Ä¬Èϵġ±Ê÷×´Îï×é¼þ£¬Í¨³£ÄÇÊÇÎÒÃÇËùÐèÒªµÄ¡£Òò´Ë´ó¶àÊýµÄʱ¼äÎÒÃÇ¿ÉÒÔÀûÓÃÕâЩ×é¼þ£¬²¢¡¡

ÇÒÖ»ÔÚÌØÊâµÄÇé¿öÏÂÎÒÃÇÐèÒª¸üÉîÈëµÄÑо¿ºÍÀí½â¡£¡¡¡¡

ÏÂÃæµÄÀý×ÓʹÓÃÁË¡°Ä¬ÈÏ¡±µÄÊ÷×´Îï×é¼þÔÚÒ»¸ö³ÌÐòƬÖÐÏÔʾһ¸öÊ÷×´Îï¡£µ±ÎÒÃÇ°´Ï°´Å¥Ê±£¬Ò»¸öеÄ×Ó¡¡

Ê÷¾Í±»Ôö¼Óµ½µ±Ç°Ñ¡ÖеĽáµãÏ£¨Èç¹ûûÓнáµã±»Ñ¡ÖУ¬¾ÍÓøù½á½Ú£©£º¡¡¡¡

¡¡¡¡

//£º¡¡Trees¡£java¡¡¡¡

//¡¡Simple¡¡Swing¡¡tree¡¡example¡£¡¡Trees¡¡can¡¡be¡¡made¡¡¡¡

//¡¡vastly¡¡more¡¡plex¡¡than¡¡this¡£¡¡¡¡

package¡¡c13¡£swing£»¡¡¡¡

import¡¡java¡£awt¡£*£»¡¡¡¡

import¡¡java¡£awt¡£event¡£*£»¡¡¡¡

import¡¡javax¡£swing¡£*£»¡¡¡¡

import¡¡javax¡£swing¡£tree¡£*£»¡¡¡¡

¡¡¡¡

//¡¡Takes¡¡an¡¡array¡¡of¡¡Strings¡¡and¡¡makes¡¡the¡¡first¡¡¡¡

//¡¡element¡¡a¡¡node¡¡and¡¡the¡¡rest¡¡leaves£º¡¡¡¡

class¡¡Branch¡¡£û¡¡¡¡

¡¡¡¡DefaultMutableTreeNode¡¡r£»¡¡¡¡

¡¡¡¡public¡¡Branch£¨String£§£§¡¡data£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡r¡¡=¡¡new¡¡DefaultMutableTreeNode£¨data£§0£§£©£»¡¡¡¡

¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡1£»¡¡i¡¡¡¶¡¡data¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡r¡£add£¨new¡¡DefaultMutableTreeNode£¨data£§i£§£©£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡DefaultMutableTreeNode¡¡node£¨£©¡¡£û¡¡¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡r£»¡¡¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡¡¡¡¡¡¡

¡¡¡¡

public¡¡class¡¡Trees¡¡extends¡¡JPanel¡¡£û¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡480¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡482¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡String£§£§£§£§¡¡data¡¡=¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Colors¡¨£»¡¡¡¨Red¡¨£»¡¡¡¨Blue¡¨£»¡¡¡¨Green¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Flavors¡¨£»¡¡¡¨Tart¡¨£»¡¡¡¨Sweet¡¨£»¡¡¡¨Bland¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Length¡¨£»¡¡¡¨Short¡¨£»¡¡¡¨Medium¡¨£»¡¡¡¨Long¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Volume¡¨£»¡¡¡¨High¡¨£»¡¡¡¨Medium¡¨£»¡¡¡¨Low¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Temperature¡¨£»¡¡¡¨High¡¨£»¡¡¡¨Medium¡¨£»¡¡¡¨Low¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¡¡¨Intensity¡¨£»¡¡¡¨High¡¨£»¡¡¡¨Medium¡¨£»¡¡¡¨Low¡¨¡¡£ý£»¡¡¡¡

¡¡¡¡£ý£»¡¡¡¡

¡¡¡¡static¡¡int¡¡i¡¡=¡¡0£»¡¡¡¡

¡¡¡¡DefaultMutableTreeNode¡¡root£»¡¡child£»¡¡chosen£»¡¡¡¡

¡¡¡¡JTree¡¡tree£»¡¡¡¡

¡¡¡¡DefaultTreeModel¡¡model£»¡¡¡¡

¡¡¡¡public¡¡Trees£¨£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡setLayout£¨new¡¡BorderLayout£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡root¡¡=¡¡new¡¡DefaultMutableTreeNode£¨¡¨root¡¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡tree¡¡=¡¡new¡¡JTree£¨root£©£»¡¡¡¡

¡¡¡¡¡¡¡¡//¡¡Add¡¡it¡¡and¡¡make¡¡it¡¡take¡¡care¡¡of¡¡scrolling£º¡¡¡¡

¡¡¡¡¡¡¡¡add£¨new¡¡JScrollPane£¨tree£©£»¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡BorderLayout¡£CENTER£©£»¡¡¡¡

¡¡¡¡¡¡¡¡//¡¡Capture¡¡the¡¡tree's¡¡model£º¡¡¡¡

¡¡¡¡¡¡¡¡model¡¡=£¨DefaultTreeModel£©tree¡£getModel£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡JButton¡¡test¡¡=¡¡new¡¡JButton£¨¡¨Press¡¡me¡¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡test¡£addActionListener£¨new¡¡ActionListener£¨£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨i¡¡¡¶¡¡data¡£length£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡child¡¡=¡¡new¡¡Branch£¨data£§i£«£«£§£©¡£node£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡What's¡¡the¡¡last¡¡one¡¡you¡¡clicked£¿¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡chosen¡¡=¡¡£¨DefaultMutableTreeNode£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡tree¡£getLastSelectedPathponent£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨chosen¡¡==¡¡null£©¡¡chosen¡¡=¡¡root£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡The¡¡model¡¡will¡¡create¡¡the¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡appropriate¡¡event¡£¡¡In¡¡response£»¡¡the¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡tree¡¡will¡¡update¡¡itself£º¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡model¡£insertNodeInto£¨child£»¡¡chosen£»¡¡0£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡This¡¡puts¡¡the¡¡new¡¡node¡¡on¡¡the¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡currently¡¡chosen¡¡node¡£¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡£ý£©£»¡¡¡¡

¡¡¡¡¡¡¡¡//¡¡Change¡¡the¡¡button's¡¡colors£º¡¡¡¡

¡¡¡¡¡¡¡¡test¡£setBackground£¨Color¡£blue£©£»¡¡¡¡

¡¡¡¡¡¡¡¡test¡£setForeground£¨Color¡£white£©£»¡¡¡¡

¡¡¡¡¡¡¡¡JPanel¡¡p¡¡=¡¡new¡¡JPanel£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡p¡£add£¨test£©£»¡¡¡¡

¡¡¡¡¡¡¡¡add£¨p£»¡¡BorderLayout¡£SOUTH£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String¡¡args£§£§£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡Show¡£inFrame£¨new¡¡Trees£¨£©£»200£»500£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

×îÖØÒªµÄÀà¾ÍÊÇ·ÖÖ§£¬ËüÊÇÒ»¸ö¹¤¾ß£¬ÓÃÀ´»ñÈ¡Ò»¸ö×Ö·û´®Êý×鲢ΪµÚÒ»¸ö×Ö·û´®½¨Á¢Ò»¸ö¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡481¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡483¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

DefaultMutableTreeNode¡¡×÷Ϊ¸ù£¬ÆäÓàÔÚÊý×éÖеÄ×Ö·û´®×÷ΪҶ¡£È»ºó¡¡node£¨£©·½·¨±»µ÷ÓÃÒÔ²úÉú¡°·ÖÖ§¡±µÄ¡¡

¸ù¡£Ê÷×´ÎïÀà°üÀ¨Ò»¸öÀ´×Ô±»ÖÆÔìµÄ·ÖÖ§µÄ¶þά×Ö·û´®Êý×飬ÒÔ¼°ÓÃÀ´Í³¼ÆÊý×éµÄÒ»¸ö¾²Ì¬Öжϡ¡i¡£¡¡

DefaultMutableTreeNode¡¡¶ÔÏó¿ØÖÆÕâ¸ö½á½Ú£¬µ«ÔÚÆÁÄ»ÉϱíʾµÄÊDZ»JTree¡¡ºÍËüµÄÏà¹Ø¡¡

¡¡£¨DefaultTreeModel£©Ä£Ê½Ëù¿ØÖÆ¡£×¢Òâµ±JTree¡¡±»Ôö¼Óµ½³ÌÐòƬʱ£¬Ëü±»·â×°µ½JScrollPane¡¡ÖСª¡ªÕâ¾Í¡¡

ÊÇËüÈ«²¿ÌṩµÄ×Ô¶¯¹ö¶¯¡£¡¡¡¡

JTree¡¡Í¨¹ýËü×Ô¼ºµÄÄ£ÐÍÀ´¿ØÖÆ¡£µ±ÎÒÃÇÐÞ¸ÄÕâ¸öÄ£ÐÍʱ£¬Ä£ÐͲúÉúÒ»¸öʼþ£¬µ¼ÖÂJTree¡¡¶Ô¿ÉÒÔ¿´¼ûµÄÊ÷¡¡

×´ÎïÍê³ÉÈκαØÒªµÄÉý¼¶¡£ÔÚ¡¡init£¨£©ÖУ¬Ä£ÐÍÓɵ÷ÓÃgetModel£¨£©·½·¨Ëù²¶×½¡£µ±°´Å¥±»°´ÏÂʱ£¬Ò»¸öеķ֡¡

Ö§±»´´½¨ÁË¡£È»ºó£¬µ±Ç°Ñ¡ÔñµÄ×é¼þ±»ÕÒµ½£¨Èç¹ûûÓÐÑ¡Ôñ¾ÍÊǸù£©²¢ÇÒÄ£Ð͵ġ¡insertNodeInto£¨£©·½·¨×öËù¡¡

ÓеĸıäÊ÷×´ÎïºÍµ¼ÖÂËüÉý¼¶µÄ¹¤×÷¡£¡¡¡¡

´ó¶àÊýµÄʱºò£¬¾ÍÏñÉÏÃæµÄÀý×ÓÒ»Ñù£¬³ÌÐò½«¸øÎÒÃÇÔÚÊ÷×´ÎïÖÐËùÐèÒªµÄÒ»ÇС£²»¹ý£¬Ê÷×´ÎïÓµÓÐÁ¦Á¿È¥×ö¡¡

ÎÒÃÇÄܹ»ÏëÏñµ½µÄÈκÎÊ¡ª¡ªÔÚÉÏÃæµÄÀý×ÓÖÐÎÒÃǵ½´¦¶¼¿É¿´µ½¡°default¡¡£¨Ä¬ÈÏ£©¡±×ÖÑù£¬ÎÒÃÇ¿ÉÒÔÈ¡´úÎÒ¡¡

ÃÇ×Ô¼ºµÄÀàÀ´»ñÈ¡²»Í¬µÄ¶¯×÷¡£µ«Çë×¢Ò⣺¼¸ºõËùÓÐÕâЩÀ඼ÓÐÒ»¸ö¾ß´óµÄ½Ó¿Ú£¬Òò´ËÎÒÃÇ¿ÉÒÔ»¨Ò»Ð©Ê±¼ä¡¡

ŬÁ¦È¥Àí½âÕâЩ´í×Û¸´ÔÓµÄÊ÷×´Îï¡£¡¡¡¡



13¡£19¡£14¡¡±í¸ñ¡¡¡¡



ºÍÊ÷×´ÎïÒ»Ñù£¬±í¸ñÔÚ¡¡Swing¡¡Ï൱µÄÅÓ´óºÍÇ¿´ó¡£ËüÃÇ×î³õÓÐÒâ±»Éè¼Æ³ÉÒÔ¡¡Java¡¡Êý¾Ý¿âÁ¬½á£¨JDBC£¬ÔÚ15¡¡

ÕÂÓнéÉÜ£©ÎªÃ½½éµÄ¡°Íø¸ñ¡±Êý¾Ý¿â½Ó¿Ú£¬²¢ÇÒÒò´ËËüÃÇÓµÓеľ޴óµÄÁé»îÐÔ£¬Ê¹ÎÒÃDz»Ôٸе½¸´ÔÓ¡£ÎÞ¡¡

ÒÉ£¬ÕâÊÇ×ãÒÔ³ÉΪ³ÉÊìµÄµç×ÓÊý¾Ý±íµÄ»ù´¡Ìõ¼þ¶øÇÒ¿ÉÄÜΪÕû±¾ÊéÌṩºÜºÃµÄ¸ù¾Ý¡£µ«ÊÇ£¬Èç¹ûÎÒÃÇÀí½âÕâ¡¡

¸öµÄ»ù´¡Ìõ¼þ£¬ËüͬÑù¿ÉÄÜ´´½¨Ïà¹ØµÄ¼òµ¥µÄ¡¡Jtable¡£¡¡¡¡

JTable¡¡¿ØÖÆÊý¾ÝµÄÏÔʾ·½Ê½£¬µ«¡¡TableModel¡¡¿ØÖÆËü×Ô¼ºµÄÊý¾Ý¡£Òò´ËÔÚÎÒÃÇ´´½¨JTable¡¡Ç°£¬Ó¦ÏÈ´´½¨Ò»¸ö¡¡

TableModel¡£ÎÒÃÇ¿ÉÒÔÈ«²¿µØÖ´ÐС¡TableModel¡¡½Ó¿Ú£¬µ«Ëüͨ³£´Ó¡¡helper¡¡ÀàµÄAbstractTableModel¡¡´¦¼òµ¥µØ¡¡

¼Ì³Ð£º¡¡¡¡

¡¡¡¡

//£º¡¡Table¡£java¡¡¡¡

//¡¡Simple¡¡demonstration¡¡of¡¡JTable¡¡¡¡

package¡¡c13¡£swing£»¡¡¡¡

import¡¡java¡£awt¡£*£»¡¡¡¡

import¡¡java¡£awt¡£event¡£*£»¡¡¡¡

import¡¡javax¡£swing¡£*£»¡¡¡¡

import¡¡javax¡£swing¡£table¡£*£»¡¡¡¡

import¡¡javax¡£swing¡£event¡£*£»¡¡¡¡

¡¡¡¡

//¡¡The¡¡TableModel¡¡controls¡¡all¡¡the¡¡data£º¡¡¡¡

class¡¡DataModel¡¡extends¡¡AbstractTableModel¡¡£û¡¡¡¡

¡¡¡¡Object£§£§£§£§¡¡data¡¡=¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¨one¡¨£»¡¡¡¨two¡¨£»¡¡¡¨three¡¨£»¡¡¡¨four¡¨£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¨five¡¨£»¡¡¡¨six¡¨£»¡¡¡¨seven¡¨£»¡¡¡¨eight¡¨£ý£»¡¡¡¡

¡¡¡¡¡¡¡¡£û¡¨nine¡¨£»¡¡¡¨ten¡¨£»¡¡¡¨eleven¡¨£»¡¡¡¨twelve¡¨£ý£»¡¡¡¡

¡¡¡¡£ý£»¡¡¡¡

¡¡¡¡//¡¡Prints¡¡data¡¡when¡¡table¡¡changes£º¡¡¡¡

¡¡¡¡class¡¡TML¡¡implements¡¡TableModelListener¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡public¡¡void¡¡tableChanged£¨TableModelEvent¡¡e£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡data¡£length£»¡¡i£«£«£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡j¡¡=¡¡0£»¡¡j¡¡¡¶¡¡data£§0£§¡£length£»¡¡j£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£print£¨data£§i£§£§j£§¡¡£«¡¡¡¨¡¡¡¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡DataModel£¨£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡addTableModelListener£¨new¡¡TML£¨£©£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡482¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡484¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡public¡¡int¡¡getColumnCount£¨£©¡¡£û¡¡¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡data£§0£§¡£length£»¡¡¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡int¡¡getRowCount£¨£©¡¡£û¡¡¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡data¡£length£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡Object¡¡getValueAt£¨int¡¡row£»¡¡int¡¡col£©¡¡£û¡¡¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡data£§row£§£§col£§£»¡¡¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡void¡¡¡¡¡¡

¡¡¡¡setValueAt£¨Object¡¡val£»¡¡int¡¡row£»¡¡int¡¡col£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡data£§row£§£§col£§¡¡=¡¡val£»¡¡¡¡

¡¡¡¡¡¡¡¡//¡¡Indicate¡¡the¡¡change¡¡has¡¡happened£º¡¡¡¡

¡¡¡¡¡¡¡¡fireTableDataChanged£¨£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡boolean¡¡¡¡¡¡

¡¡¡¡isCellEditable£¨int¡¡row£»¡¡int¡¡col£©¡¡£û¡¡¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡true£»¡¡¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý£»¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

¡¡¡¡

public¡¡class¡¡Table¡¡extends¡¡JPanel¡¡£û¡¡¡¡

¡¡¡¡public¡¡Table£¨£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡setLayout£¨new¡¡BorderLayout£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡JTable¡¡table¡¡=¡¡new¡¡JTable£¨new¡¡DataModel£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡JScrollPane¡¡scrollpane¡¡=¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡JTable¡£createScrollPaneForTable£¨table£©£»¡¡¡¡

¡¡¡¡¡¡¡¡add£¨scrol¡¡lpane£»¡¡BorderLayout¡£CENTER£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String¡¡args£§£§£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡Show¡£inFrame£¨new¡¡Table£¨£©£»200£»200£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

DateModel¡¡°üÀ¨Ò»×éÊý¾Ý£¬µ«ÎÒÃÇͬÑùÄÜ´ÓÆäËüµÄµØ·½µÃµ½Êý¾Ý£¬ÀýÈç´ÓÊý¾Ý¿âÖС£¹¹½¨Æ÷Ôö¼ÓÁËÒ»¸ö¡¡

TableModelListener¡¡ÓÃÀ´ÔÚÿ´Î±í¸ñ±»¸Ä±äºó´òÓ¡Êý×顣ʣϵķ½·¨¶¼×ñÑ­Bean¡¡µÄÃüÃû¹æÔò£¬²¢ÇÒµ±¡¡

JTable¡¡ÐèÒªÔÚ¡¡DateModel¡¡ÖÐÏÔʾÐÅϢʱµ÷Óá£AbstractTableModel¡¡ÌṩÁËĬÈϵġ¡setValueAt£¨£©ºÍ¡¡

isCellEditable£¨£©·½·¨ÒÔ·ÀÖ¹ÐÞ¸ÄÕâЩÊý¾Ý£¬Òò´ËÈç¹ûÎÒÃÇÏëÐÞ¸ÄÕâЩÊý¾Ý£¬¾Í±ØÐë¹ýÔØÕâЩ·½·¨¡£¡¡¡¡

Ò»µ©ÎÒÃÇÓµÓÐÒ»¸öTableModel£¬ÎÒÃÇÖ»ÐèÒª½«Ëü·ÖÅä¸øJTable¹¹½¨Æ÷¼´¿É¡£ËùÓÐÓйØÏÔʾ£¬±à¼­ºÍ¸üеġ¡

Ïêϸ×ÊÁϽ«ÎªÎÒÃÇ´¦Àí¡£×¢ÒâÕâ¸ö³ÌÐ
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
δÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡