⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datadispframe.java.svn-base

📁 通讯采集软件
💻 SVN-BASE
📖 第 1 页 / 共 3 页
字号:
         new DataDispFrame().show();
     */
  }

  // Variables declaration - do not modify//GEN-BEGIN:variables
  private javax.swing.JLabel jLabel4;
  private javax.swing.JButton ConfirmButton;
  private javax.swing.JPanel jPanel4;
  private javax.swing.JMenuItem displayRefresh;
  private javax.swing.JLabel jLabel1;
  private javax.swing.JTree DataTree;
  private javax.swing.JLabel jLabel2;
  private javax.swing.JLabel jLabel316;
  private javax.swing.JToolBar ToolBar;
  private javax.swing.JPanel jPanel2;
  private javax.swing.JPanel jPanel5;
  private javax.swing.JTextField TerminalText;
  private javax.swing.JLabel jLabel38;
  private javax.swing.JPanel RightPanel;
  private javax.swing.JScrollPane TreeScrollPane;
  private javax.swing.JSplitPane SplitPane;
  private javax.swing.JTextField FactoryText;
  private javax.swing.JToolBar jToolBar1;
  private javax.swing.JPanel leftPanel;
  private javax.swing.JLabel SelectedFacLabel;
  private javax.swing.JTable DataTable;
  private javax.swing.JLabel jLabel326;
  private javax.swing.JPanel ToolBarPanel;
  private javax.swing.JLabel SelectedAreaLabel;
  private javax.swing.JButton TerminalButton;
  private javax.swing.JButton FacButton;
  private javax.swing.JPanel jPanel1;
  private javax.swing.JLabel SelectedTermLabel;
  private javax.swing.JTextField ComputerName;
  private javax.swing.JTextField AreaText;
  private javax.swing.JScrollPane DataTableScrollPane;
  private javax.swing.JPopupMenu popupMenu;
  private javax.swing.JButton AreaButton;
  // End of variables declaration//GEN-END:variables

  protected DefaultMutableTreeNode rootNode;
  protected DefaultTreeModel treeModel;
  protected JTree tree;
  private Toolkit toolkit = Toolkit.getDefaultToolkit();

  public void initTree() {
    rootNode = new DefaultMutableTreeNode(PublicMethod.m_RootString);
    treeModel = new DefaultTreeModel(rootNode);
    DataTree = new JTree(treeModel);
    DataTree.setEditable(false);
    DataTree.setCellRenderer(new MyTreeCellRenderer());
    DataTree.getSelectionModel().setSelectionMode(TreeSelectionModel.
                                                  SINGLE_TREE_SELECTION);
    DataTree.setShowsRootHandles(true);
    DataTree.addTreeSelectionListener(new TreeSelectionListener() {
      public void valueChanged(TreeSelectionEvent e) {
        //对监听到的e的处理
        HandleTreeEvent(e);
      }
    });
    DataTree.addTreeWillExpandListener(new TreeWillExpandListener() {
      public void treeWillCollapse(TreeExpansionEvent event) {
        HandelWillCollapse(event);
      }

      public void treeWillExpand(TreeExpansionEvent event) {
        HandelWillExpand(event);
      }
    });

    DataTree.setSelectionRow(0);
    DataTree.setSelectionRow(1);

    TreeScrollPane.setViewportView(DataTree);
    this.updateview();
  }

  public void HandelWillCollapse(TreeExpansionEvent event) {
    JTree m_tree = (JTree) (event.getSource());
    TreePath m_path = event.getPath();
    if (m_path == null) {
      return;
    }
    DefaultMutableTreeNode node = (DefaultMutableTreeNode) (m_path.
        getLastPathComponent());
    if (node == null) {
      return;
    }
    Object nodeInfo = node.getUserObject();
    if (nodeInfo == null) {
      return;
    }
    if (nodeInfo instanceof area) {
      int count = node.getChildCount();
      if (count > 0) {
        int[] index = new int[node.getChildCount()];
        Object[] children = new Object[node.getChildCount()];
        for (int i = 0; i < node.getChildCount(); i++) {
          index[i] = i;
          children[i] = node.getChildAt(i);
        }
        node.removeAllChildren();
        DefaultTreeModel m_model = (DefaultTreeModel) (m_tree.getModel());
        m_model.nodesWereRemoved(node, index, children);
      }
    }
  }

  public void HandelWillExpand(TreeExpansionEvent event) {
    JTree m_tree = (JTree) (event.getSource());
    TreePath m_path = event.getPath();
    if (m_path == null) {
      return;
    }
    DefaultMutableTreeNode node = (DefaultMutableTreeNode) (m_path.
        getLastPathComponent());
    if (node == null) {
      return;
    }
    Object nodeInfo = node.getUserObject();
    if (nodeInfo == null) {
      return;
    }
    if (nodeInfo instanceof area) {
      //PublicMethod.getTermsOfArea((area)nodeInfo,FrontGuiDefine.TERMINAL_NO_COMPUTER);
    }
  }

  public void HandleTreeEvent(TreeSelectionEvent e) {
    System.out.println("^^^^^^^^^^^^^^^^^^^^^^^^HandleTreeEvent");
    JTree m_tree = (JTree) e.getSource();
    DefaultMutableTreeNode node = (DefaultMutableTreeNode) m_tree.
        getLastSelectedPathComponent();
    if (node == null) {
      return;
    }
    Object nodeInfo = node.getUserObject();

    if (nodeInfo instanceof area || nodeInfo instanceof factory ||
        nodeInfo instanceof String) {
      if (node.isLeaf()) {
        PublicMethod.createNodes(node, m_tree, PublicMethod.REPORTDISPTYPE,
                                 CollectorDefine.m_HashTerminal,
                                 CollectorDefine.m_HashFactory,
                                 CollectorDefine.m_HashArea,
                                 FrontGuiDefine.TERMINAL_NO_COMPUTER);
        TreePath treePath = m_tree.getSelectionPath();
        m_tree.expandPath(treePath);
      }
      if (nodeInfo instanceof area) {
        area m_area = (area) nodeInfo;
        if (! (node.isLeaf())) {
          //PublicMethod.getTermsOfArea(m_area,FrontGuiDefine.TERMINAL_NO_COMPUTER);
          TreePath treePath = m_tree.getSelectionPath();
          m_tree.expandPath(treePath);
        }
        String area_name = m_area.getAreaName();
        SelectedAreaLabel.setText(area_name);
        SelectedAreaLabel.setToolTipText(area_name);
        SelectedFacLabel.setText("");
        SelectedFacLabel.setToolTipText("");
        SelectedTermLabel.setText("");
        SelectedTermLabel.setToolTipText("");
      }
      if (nodeInfo instanceof factory) {
        String fac_name = ( (factory) nodeInfo).getFacName();
        SelectedFacLabel.setText(fac_name);
        SelectedFacLabel.setToolTipText(fac_name);
        SelectedTermLabel.setText("");
        SelectedTermLabel.setToolTipText("");
        //pzy modi 060713
        factory m_factory = (factory) (nodeInfo);
        Collection terms = m_factory.getTerminals();
        if (terms != null) {
          if (terms.size() == 1) {
            Object[] term_array = terms.toArray();
            terminal m_terminal = (terminal) (term_array[0]);
            long terminalid = m_terminal.getTerminalId();
            if (terminalid != CollectorDefine.m_DataTerminal) {
              FrontGuiDefine.m_guimsg.sendDataMonitorMsg(terminalid);
              System.out.println("$$$$$$$$$$$$$$$$$$$$$$$ 发送数据监控消息");
              CollectorDefine.m_DataTerminal = terminalid;
              DataTableModel m_model = (DataTableModel) DataTable.getModel();
              int rowcount = m_model.getRowCount();
              for (int j = 0; j < rowcount; j++) {
                m_model.removeRow(0);
              }
              DataTableScrollPane.setViewportView(DataTable);
            }
            String term_name = m_terminal.getTerminalName();
            SelectedTermLabel.setText(term_name);
            SelectedTermLabel.setToolTipText(term_name);
          }
        }
        //pzy modi 060713
      }
    }
    if (nodeInfo instanceof terminal) {
      terminal m_terminal = (terminal) nodeInfo;
      String term_name = m_terminal.getTerminalName();
      SelectedTermLabel.setText(term_name);
      SelectedTermLabel.setToolTipText(term_name);
      DefaultMutableTreeNode parentNode = (DefaultMutableTreeNode) node.
          getParent();
      factory fac = (factory) parentNode.getUserObject();
      DefaultMutableTreeNode grandNode = (DefaultMutableTreeNode) parentNode.
          getParent();
      area m_area = (area) grandNode.getUserObject();
      SelectedAreaLabel.setText(m_area.getAreaName());
      SelectedAreaLabel.setToolTipText(m_area.getAreaName());
      SelectedFacLabel.setText(fac.getFacName());
      SelectedFacLabel.setToolTipText(fac.getFacName());

      long terminalid = m_terminal.getTerminalId();
      if (terminalid != CollectorDefine.m_DataTerminal) {
        FrontGuiDefine.m_guimsg.sendDataMonitorMsg(terminalid);
        System.out.println("$$$$$$$$$$$$$$$$$$$$$$$ 发送数据监控消息");
        CollectorDefine.m_DataTerminal = terminalid;
        DataTableModel m_model = (DataTableModel) DataTable.getModel();
        int rowcount = m_model.getRowCount();
        for (int j = 0; j < rowcount; j++) {
          m_model.removeRow(0);
        }
        DataTableScrollPane.setViewportView(DataTable);
      }
    }
    TreeScrollPane.setViewportView(DataTree);
    this.updateview();
  }

  private boolean SearchAreaByName(String AreaName) {
    if (AreaName == null || AreaName.equals(new String(""))) {
      return false;
    }
    DefaultMutableTreeNode root = (DefaultMutableTreeNode) (DataTree.getModel().
        getRoot());
    if (root.isLeaf()) {
      PublicMethod.createNodes(root, DataTree, PublicMethod.PARAMDISPTYPE,
                               CollectorDefine.m_HashTerminal,
                               CollectorDefine.m_HashFactory,
                               CollectorDefine.m_HashArea,
                               FrontGuiDefine.TERMINAL_NO_COMPUTER);
    }
    int CountOfAreas = root.getChildCount();
    int i = 0;
    for (i = 0; i < CountOfAreas; i++) {
      DefaultMutableTreeNode m_node = (DefaultMutableTreeNode) (root.getChildAt(
          i));
      if (m_node instanceof MyAreaTreeNode) {
        boolean flag = SearchByAreaName(AreaName, m_node, DataTree);
        if (flag) {
          return true;
        }
      }
    }
    System.out.println("SearchAreaByName--- i=" + i + " CountOfAreas = " +
                       CountOfAreas);
    System.out.println("没有找到匹配的地区!!!");
    JOptionPane.showMessageDialog(this, "没有找到匹配地区,请确认搜索条件!!");
    return false;
  }

  private boolean SearchByAreaName(String AreaName, DefaultMutableTreeNode node,
                                   JTree DataTree) {
    DefaultMutableTreeNode root = (DefaultMutableTreeNode) (DataTree.getModel().
        getRoot());
    if (node instanceof MyAreaTreeNode) {
      MyAreaTreeNode m_AreaNode = (MyAreaTreeNode) node;
      System.out.println("这个节点名称:" + m_AreaNode.toString());
      if (AreaName.equals(m_AreaNode.toString())) {
        System.out.println("终于找到了-----" + AreaName);
        DataTree.clearSelection();
        TreePath m_SearchPath = new TreePath(m_AreaNode.getPath());
        DataTree.expandPath(m_SearchPath);
        DataTree.setSelectionPath(m_SearchPath);
        return true;
      }
      else {
        System.out.println("节点名-----" + AreaName);
        int children_count = m_AreaNode.getChildCount();
        if (children_count <= 0) {
          System.out.println("此节点没有子节点,返回");
          return false;
        }
        else {
          int i = 0;
          for (i = 0; i < children_count; i++) {
            DefaultMutableTreeNode m_childNode = (DefaultMutableTreeNode) (
                m_AreaNode.getChildAt(i));
            if (m_childNode instanceof MyAreaTreeNode) {
              if (SearchByAreaName(AreaName, m_childNode, DataTree)) {
                return true;
              }
              else {
                continue;
              }
            }
            else {
              System.out.println("这个子节点不是Area节点,不比较,下一个");
              continue;
            }
          }
          System.out.println("这个节点的子节点里面没有匹配的!!");
          return false;
        }
      }
    }
    else {
      System.out.println("这个节点不是Area节点,不比较,返回");
      return false;
    }
  }

  private boolean SearchByArea(area m_area) {
    if (m_area == null) {
      return false;
    }
    DefaultMutableTreeNode root = (DefaultMutableTreeNode) (DataTree.getModel().
        getRoot());
    if (root.isLeaf()) {
      PublicMethod.createNodes(root, DataTree, PublicMethod.PARAMDISPTYPE,
                               CollectorDefine.m_HashTerminal,
                               CollectorDefine.m_HashFactory,
                               CollectorDefine.m_HashArea,
                               FrontGuiDefine.TERMINAL_NO_COMPUTER);
    }
    int CountOfAreas = root.getChildCount();
    int i = 0;
    for (i = 0; i < CountOfAreas; i++) {
      DefaultMutableTreeNode m_node = (DefaultMutableTreeNode) (root.getChildAt(
          i));
      if (m_node instanceof MyAreaTreeNode) {
        boolean flag = SearchAreaInNode(m_area, m_node, DataTree);
        if (flag) {
          return true;
        }
      }
    }
    System.out.println("SearchByArea--- i=" + i + " CountOfAreas = " +
                       CountOfAreas);
    System.out.println("没有找到匹配的地区!!!");
    JOptionPane.showMessageDialog(this, "没有找到匹配地区,请确认搜索条件!!");
    return false;
  }

  private boolean SearchAreaInNode(area m_area, DefaultMutableTreeNode node,
                                   JTree DataTree) {
    DefaultMutableTreeNode root = (DefaultMutableTreeNode) (DataTree.getModel().
        getRoot());
    if (node instanceof MyAreaTreeNode) {
      MyAreaTreeNode m_AreaNode = (MyAreaTreeNode) node;
      System.out.println("这个节点名称:" + m_AreaNode.toString());
      area m_tempArea = (area) (m_AreaNode.getUserObject());
      if (m_area.getAreaId() == m_tempArea.getAreaId()) {
        DataTree.clearSelection();
        TreePath m_SearchPath = new TreePath(m_AreaNode.getPath());
        DataTree.expandPath(m_SearchPath);
        DataTree.setSelectionPath(m_SearchPath);
        return true;
      }
      else {
        int children_count = m_AreaNode.getChildCount();
        if (children_count <= 0) {
          System.out.println("此节点没有子节点,返回");
          return false;
        }
        else {
          int i = 0;
          for (i = 0; i < children_count; i++) {
            DefaultMutableTreeNode m_childNode = (DefaultMutableTreeNode) (
                m_AreaNode.getChildAt(i));
            if (m_childNode instanceof MyAreaTreeNode) {
              if (SearchAreaInNode(m_area, m_childNode, DataTree)) {
                return true;
              }
              else {
                continue;
              }
            }
            else {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -