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

📄 mytreecellrenderer.java.svn-base

📁 通讯采集软件
💻 SVN-BASE
字号:
package collector.gui.guiVo;

import java.awt.*;
import javax.swing.*;
import javax.swing.tree.*;

import pbs.service.vo.*;

public class MyTreeCellRenderer
    extends DefaultTreeCellRenderer {

  public MyTreeCellRenderer() {
    panel.setBackground(UIManager.getColor("Tree.textBackground"));
    label.setFont(new java.awt.Font("Dialog", 0, 12));
    m_label.setFont(new java.awt.Font("Dialog", 0, 12));
    setOpaque(true);
    panel.setOpaque(true);
    panel.setLayout(new FlowLayout(FlowLayout.CENTER, 0, 0));
    this.setOpenIcon(null);
    this.setClosedIcon(null);
    this.setLeafIcon(null);
    label.setIcon(treeIcon);
    panel.add(label);
    panel.add(struct);
    panel.add(m_label);
  }

  private JLabel label = new JLabel();
  private JLabel m_label = new JLabel();
  private String valueString = "";
  private Icon treeIcon = new ImageIcon();
  private Icon factory_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/factory_14.jpg"));
  private Icon channel_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/channel.jpg"));
  private Icon area_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/area_1_17.jpg"));
  private Icon home_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/home_1.jpg"));
  private Icon terminal_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/terminal.jpg"));
  private Icon termserver_Icon = new javax.swing.ImageIcon(getClass().
      getResource("/gifs/treenode/term_server.jpg"));
  private Icon termdevice_Icon = new javax.swing.ImageIcon(getClass().
      getResource("/gifs/treenode/terminaldevice.jpg"));
  private Icon meter_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/meter.gif"));
  private Icon pulse_Icon = new javax.swing.ImageIcon(getClass().getResource(
      "/gifs/treenode/pulse.gif"));

  private JPanel panel = new JPanel();
  private Component struct = Box.createHorizontalStrut(5);

  public Component getTreeCellRendererComponent(JTree tree, Object value,
                                                boolean selected,
                                                boolean expanded, boolean leaf,
                                                int row, boolean hasFocus) {
    DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
    Object userobject = node.getUserObject();
    Component m_Comp = super.getTreeCellRendererComponent(tree, value,
        selected, expanded, leaf, row, hasFocus);

    if (userobject instanceof String) {
      if (node.isRoot()) {
        label.setIcon(home_Icon);
      }
      m_label.setText(userobject.toString());
    }
    else if (userobject instanceof area) {
      label.setIcon(area_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof factory) {
      label.setIcon(factory_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof terminal) {
      label.setIcon(terminal_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof terminal_server) {
      label.setIcon(termserver_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof termdevice) {
      label.setIcon(termdevice_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof meter) {
      label.setIcon(meter_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof pulse) {
      label.setIcon(pulse_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof channel_group) {
      label.setIcon(channel_Icon);
      m_label.setText(node.toString());
    }
    else if (userobject instanceof channel) {
      label.setIcon(channel_Icon);
      m_label.setText(node.toString());
    }
    else {
      treeIcon = super.getDefaultOpenIcon();
      label.setIcon(treeIcon);
    }
    if (this.selected) {
      panel.setBackground(new DefaultTreeCellRenderer().
                          getBackgroundSelectionColor());
    }
    else {
      panel.setBackground(tree.getBackground());
    }
    return panel;
  }
}

⌨️ 快捷键说明

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