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

📄 dummytreecellrenderer.java

📁 基于Junit的 功能和单元测试的的测试工具。只支持Swing.
💻 JAVA
字号:
package org.uispec4j.utils;

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

public class DummyTreeCellRenderer extends DefaultTreeCellRenderer {
  private final Font normalFont;
  private final Font boldFont;

  public DummyTreeCellRenderer(JTree tree) {
    this.normalFont = tree.getFont();
    this.boldFont = normalFont.deriveFont(Font.BOLD);
  }

  public final Component getTreeCellRendererComponent(JTree tree,
                                                      Object modelObject,
                                                      boolean selected,
                                                      boolean expanded,
                                                      boolean leaf, int row,
                                                      boolean hasFocus) {
    super.getTreeCellRendererComponent(tree, "", selected, expanded, leaf, row, hasFocus);
    setText((modelObject == null ? "null" : getUserObject(modelObject).text));
    setFont(getUserObject(modelObject).isBold ? boldFont : normalFont);
    if (selected) {
      setForeground(textSelectionColor);
    }
    else {
      setForeground(getUserObject(modelObject).color);
    }
    return this;
  }

  private UserObject getUserObject(Object modelObject) {
    DefaultMutableTreeNode node = (DefaultMutableTreeNode)modelObject;
    return (UserObject)node.getUserObject();
  }

  public static class UserObject {
    String text;
    boolean isBold;
    Color color = Color.BLACK;

    public UserObject(String text) {
      this.text = text;
    }

    public String toString() {
      return "obj:" + text;
    }

    public void setBold(boolean isBold) {
      this.isBold = isBold;
    }

    public void setColor(Color color) {
      this.color = color;
    }
  }
}

⌨️ 快捷键说明

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