package window; import javax.swing.JTree; import javax.swing.tree.DefaultMutableTreeNode; import dell_map.Dell_Map; import java.util.ResourceBundle; import java.awt.Font; public class NavigationTreeFactory { public static JTree createNavigationTree(ResourceBundle messages) { DefaultMutableTreeNode root = new DefaultMutableTreeNode(messages.getString("NAVIGATION")); // µØÍ¼½Úµã DefaultMutableTreeNode mapNode = new DefaultMutableTreeNode(messages.getString("MAP")); // µØÍ¼½Úµã (Ò»¼¶) String[] mapNames = Dell_Map.getAllMapNames(); if (mapNames != null) { for (String name : mapNames) { mapNode.add(new DefaultMutableTreeNode(name));// Ö±½ÓʹÓÃÊý¾Ý¿â·µ»ØµÄµØÍ¼Ãû³Æ£¬¶ø²»ÊÇ´Ó×ÊÔ´°ü»ñÈ¡ } } root.add(mapNode); // ½«µØÍ¼½ÚµãÌí¼Óµ½¸ù½Úµã // É豸½Úµã (Ò»¼¶) DefaultMutableTreeNode deviceNode = new DefaultMutableTreeNode(messages.getString("DEVICE")); // É豸¹ÜÀí (¶þ¼¶) deviceNode.add(new DefaultMutableTreeNode(messages.getString("TAG_MANAGEMENT"))); // ±êÇ©¹ÜÀí deviceNode.add(new DefaultMutableTreeNode(messages.getString("BASE_MANAGEMENT"))); // »ùÕ¾¹ÜÀí deviceNode.add(new DefaultMutableTreeNode(messages.getString("GATEWAY_MANAGEMENT"))); // Íø¹Ø¹ÜÀí deviceNode.add(new DefaultMutableTreeNode(messages.getString("DIFF_BASE"))); // ²î·Ö»ùÕ¾ deviceNode.add(new DefaultMutableTreeNode(messages.getString("TAG_TYPE"))); // ±êÇ©ÀàÐÍ root.add(deviceNode); // Ëã·¨½Úµã (Ò»¼¶) DefaultMutableTreeNode algoNode = new DefaultMutableTreeNode(messages.getString("ALGORITHM")); // Ëã·¨ÅäÖà (¶þ¼¶) algoNode.add(new DefaultMutableTreeNode(messages.getString("NEAR_CONFIG"))); // ÁÙ½üÅäÖà algoNode.add(new DefaultMutableTreeNode(messages.getString("SYNC_CONFIG"))); // ͬ²½ÅäÖà algoNode.add(new DefaultMutableTreeNode(messages.getString("FLOOR_SETTING"))); // Â¥²ãÉèÖà algoNode.add(new DefaultMutableTreeNode(messages.getString("GROUP_SETTING"))); // С×éÉèÖà algoNode.add(new DefaultMutableTreeNode(messages.getString("GENERAL_ALGORITHM"))); // ͨÓÃËã·¨ root.add(algoNode); // ΧÀ¸½Úµã (Ò»¼¶) DefaultMutableTreeNode fenceNode = new DefaultMutableTreeNode(messages.getString("FENCE")); // ΧÀ¸¹ÜÀí (¶þ¼¶) fenceNode.add(new DefaultMutableTreeNode(messages.getString("FENCE_DRAWING"))); // ΧÀ¸»æÖÆ fenceNode.add(new DefaultMutableTreeNode(messages.getString("FENCE_LIST"))); // ΧÀ¸Áбí root.add(fenceNode); // ͳ¼Æ½Úµã (Ò»¼¶) DefaultMutableTreeNode statNode = new DefaultMutableTreeNode(messages.getString("STATISTICS")); // ͳ¼Æ·ÖÎö (¶þ¼¶) statNode.add(new DefaultMutableTreeNode(messages.getString("DEVICE_OFFLINE"))); // É豸ÀëÏß statNode.add(new DefaultMutableTreeNode(messages.getString("TRACK_RECORD"))); // ¹ì¼£¼Ç¼ statNode.add(new DefaultMutableTreeNode(messages.getString("ACCESS_RECORD"))); // ½ø³ö¼Ç¼ statNode.add(new DefaultMutableTreeNode(messages.getString("ALARM_RECORD"))); // ±¨¾¯¼Ç¼ statNode.add(new DefaultMutableTreeNode(messages.getString("HEALTH_RECORD"))); // ½¡¿µ¼Ç¼ statNode.add(new DefaultMutableTreeNode(messages.getString("TAG_POWER"))); // ±êÇ©µçÁ¿ statNode.add(new DefaultMutableTreeNode(messages.getString("BASE_POWER"))); // »ùÕ¾µçÁ¿ root.add(statNode); // ϵͳ½Úµã (Ò»¼¶) DefaultMutableTreeNode sysNode = new DefaultMutableTreeNode(messages.getString("SYSTEM")); // ϵͳ¹ÜÀí (¶þ¼¶) sysNode.add(new DefaultMutableTreeNode(messages.getString("SYSTEM_SETTINGS"))); // ϵͳÉèÖà sysNode.add(new DefaultMutableTreeNode(messages.getString("MESSAGE_VIEW"))); // ±¨ÎIJ鿴 sysNode.add(new DefaultMutableTreeNode(messages.getString("SYSTEM_DEBUG"))); // ϵͳµ÷ÊÔ sysNode.add(new DefaultMutableTreeNode(messages.getString("COMPANY_MANAGEMENT"))); // ¹«Ë¾¹ÜÀí sysNode.add(new DefaultMutableTreeNode(messages.getString("DEPARTMENT_MANAGEMENT"))); // ²¿ÃŹÜÀí sysNode.add(new DefaultMutableTreeNode(messages.getString("MAP_MANAGEMENT")));//µØÍ¼¹ÜÀí sysNode.add(new DefaultMutableTreeNode(messages.getString("Quick_Calc"))); //¿ì½Ý¼ÆËã sysNode.add(new DefaultMutableTreeNode(messages.getString("Serial_Port_Tool"))); //´®¿Ú¹¤¾ß sysNode.add(new DefaultMutableTreeNode(messages.getString("VERSION_INFO"))); // °æ±¾ÐÅÏ¢ root.add(sysNode); // ´´½¨Ê÷²¢ÉèÖÃÊôÐÔ JTree tree = new JTree(root); tree.setRootVisible(false); tree.setFont(new Font("΢ÈíÑźÚ", Font.PLAIN, 14)); tree.setShowsRootHandles(true); // Õ¹¿ªËùÓнڵã for (int i = 0; i < tree.getRowCount(); i++) { tree.expandRow(i); } return tree; } }