ʵÀý½²½â--¿ª·¢SWING³ÌÐòµÄXML¿ò¼Ü
¼ò½é
ÏÖÔÚ£¬Êг¡ÊǽôËõµÄ¡£¿ò¼Ü¿ÉÒÔ½ÚÊ¡Éè¼ÆºÍ¿ª·¢½×¶ÎµÄʱ¼ä¡£IDE¿ÉÒÔʹµÃÎÒÃǸüÈÝÒ׵Ŀª·¢Óû§½Ó¿Ú¡£±ê×¼µÄGUIÓ¦ÓóÌÐòÓò»Í¬µÄÃæ°å²¼¾ÖÀ´¶¨ÒåGUI£¬ÒѳÉΪһÖÖ¸ù±¾µÄģʽ¶ø´æÔÚ¡£»ùÓÚÕâ¸öģʽ£¬¿¼ÂÇʹÓÿò¼ÜÀ´Ìá¸ßÖ´ÐÐËÙ¶È£¬´ïµ½¸ü¸ßµÄ²¢Ðд¦Àí³Ì¶È£¬Ðµ÷¸ü¿íËɵĿª·¢·½Ê½¡£ÎÒÃÇÔÚÕâÀï¾ÍÒªÓÃJAVA SWINGÓ¦ÓóÌÐòÀ´ÃèÐðÕâôһ¸ö¿ò¼Ü¡£
¼òµ¥µÄÓ¦ÓóÌÐò-ͼÊé¹Ý¹ÜÀíϵͳ
ÎÒÃÇÏÂÃæÀ´ÌÖÂÛÒ»¸ö¼òµ¥µÄͼÊé¹Ý¹ÜÀíϵͳ£¬ÓÃÀ´Àí½â»ùÓÚXMLµÄGUI¿ò¼Ü¡£

ÉÏÃæµÄÁ÷³Ìͼ¶¨ÒåÁËͼÊé¹ÝÓû§½Ó¿ÚµÄÉè¼Æ¡£Ö÷Ŀ¼£¬»áÔ±µÇ¼£¬Óû§×¢²áºÍÊé¼®¼ìË÷£¬ÕâЩ¶¼ÊÇÓ¦Óà ³ÌÐòÖдæÔÚµÄÃæ°å£¨panel£©¡£´ÓÁ÷³Ìͼ¿ÉÒÔ¿´³ö£¬ÔÚÓ¦ÓóÌÐòÖпÉÄܵĴ¦Àí·¾¶ÓÐÏÂÃæ¼¸ÖÖ£º
Ö÷Ŀ¼->Óû§×¢²á->Êé¼®¼ìË÷ Ö÷Ŀ¼->»áÔ±µÇ¼->Êé¼®¼ìË÷
ÔÔò
ÈκÎʱºòÏÔʾµÄÃæ°åÒÀÀµÓÚÏÈÇ°Ãæ°åµÄÊä³öÄÚÈÝ¡£Òò´Ë£¬ÐèÒªÉè¼ÆÒ»¸öÆÕͨµÄ¿ØÖÆÆ÷×÷ΪÕû¸ö¿ò¼ÜµÄ´°Ì壨form£©£¬ËüÌá¹©Ãæ°åÓÃÀ´×ö±ØÒªµÄÊäÈ룬²¢´¦ÀíÃæ°åÖÐÆÚ´ý·µ»ØµÄÊä³öÄÚÈÝ¡£ÕâÐ©Ãæ°å¶¼ÊµÏÖÁËXSFPanel½Ó¿Ú£¬¸Ã½Ó¿ÚÖÐÓиöexecute()·½·¨ÓÃÀ´½«±íµ¥ÖеÄÊäÈëÄÚÈÝ´æÈëÒ»¸öHashMapÖУ¬²¢´ÓÁíÒ»¸öHashMap·µ»ØÊä³öÄÚÈÝ¡£¸Ã¿ò¼ÜµÄ¿ØÖÆÆ÷´¦ÀíʹÓ**ashMap·µ»ØµÄÊä³öÄÚÈÝ£¬²¢ËæÊ±ÅжÏÓ¦¸ÃÏÔʾÄĸöÃæ°å¡£
public interface XSFPanel extends JPanel { public HashMap execute(HashMap inputs); . . . }
¿ØÖÆÆ÷ºÍXMLÁ÷¶¨Òå
Á÷¿ØÖÆÆ÷ºÍÒ»¸ö¼òµ¥µÄ¶¨Òå×ÅÓû§½Ó¿ÚµÄXMLÏà¹ØÁª¡£Õâ¸öXML±ØÐë»ùÓÚÿ¸öÃæ°åÊäÈëµÄÄÚÈݺÍÁÏÏë»áÊä³öµÄÄÚÈݶø¶¨Òå¡£ÎÒÃÇÕâÀïÌÖÂÛµÄÕâ¸ö¼òµ¥µÄ³ÌÐòÊÇ»ùÓÚÏÂÃæµÄXML¹¤×÷µÄ¡£
<XFSFramework>
<XFSPanels>
<XFSPanel name="Home" class="library.Home"> <inputs/> <outputs> <output variable="userOption"/> </outputs> </XFSPanel>
<XFSPanel name="MemberLogin" class="library.MemberLogin"> <inputs/> <outputs> <output variable="userName"/> <output variable="password"/> </outputs> </XFSPanel>
<XFSPanel name="Registration" class="library.UserRegistration"> <inputs/> <outputs> <output variable="userName"/> <output variable="password"/> <output variable="emailId"/> <output variable="address"/> </outputs> </XFSPanel>
<XFSPanel name="RegistrationPreview" class="library.UserPreview"> <inputs> <input variable="userName"/> <input variable="emailId"/> <input variable="address"/> </inputs> <outputs/> </XFSPanel>
<XFSPanel name="searchBook" class="library.searchBook"> <inputs/> <outputs> <output variable="criterion"/> <output variable="searchValue"/> </outputs> </XFSPanel>
</XFSPanels>
<XFSPanelFlow> <step id="s1" from="Home" to="MemberLogin"> <conditions> <condition variable="userOption" value="login"/> </conditions> </step> <step id="s2" from="Home" to="Registration"> <conditions> <condition variable="userOption" value="newRegistration"/> </conditions> </step> <step id="s3" from="Registration" to="RegistrationPreview"> <conditions/> </step> <step id="s4" from="MemberLogin" to="searchBook"> <conditions> <condition variable="controller_loginResult" value="success"/> </conditions> </step> <step id="s5" from="RegistrationPreview" to="MemberLogin"> <conditions> <condition variable="controller_accountCreationResult" value="success"/> </conditions> </step>
</XFSPanelFlow>
</XFSFramework>
×¢Ò⣺Õâ¸öXML½ö½ö±»ÓÃÀ´ÃèÐð¿ò¼Ü¡£
ÔÚÉÏÃæµÄXMLÖУ¬Ìá¼°µ½ËùÓÐʵÏÖÁËXFSPanel½Ó¿ÚµÄÃæ°å¡£´ÓÒ»¸öÃæ°å³öÀ´µÄÁ÷ÐÅÏ¢µ½ÁíÒ»¸öÃæ°å¡£
Translated by Caiyi0903(Willpower)£¬2004.5.23 
|