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

📄 mytreecellrenderer.java

📁 毕业设计(模拟网络聊天工具而设计)
💻 JAVA
字号:
package qq.client.panel;

import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JTree;
import javax.swing.border.Border;
import javax.swing.tree.TreeCellRenderer;
import javax.swing.BorderFactory;
import java.util.*;

import qq.entity.User;

/**
 * 用户树的渲染器
 * 
 * @author hycc
 * 
 */
public class MyTreeCellRenderer extends JLabel implements TreeCellRenderer {

	private static final long serialVersionUID = 118872265L;
	private Border line;
	private Border empty;
	private ImageIcon icon;

	public MyTreeCellRenderer() {
		line = BorderFactory.createLineBorder(Color.green);
		empty = BorderFactory.createEmptyBorder();
		icon = null;
	}

	/**
	 * 渲染器
	 */
	public Component getTreeCellRendererComponent(JTree tree, Object value,
			boolean selected, boolean expanded, boolean leaf, int row,
			boolean hasFocus) {
		if (value instanceof List) {
			this.setText("在线用户");
			if (expanded) {
				icon = new ImageIcon("qq/images/image/open.png");
			} else {
				icon = new ImageIcon("qq/images/image/many.png");
			}
			if (icon != null) {
				this.setIcon(icon);
			}
		} else if (value instanceof User) {
			User user = (User) value;
			this.setText(user.getName());
			this.setFont(new Font("隶书",Font.BOLD,16));
			this.setForeground(Color.RED);
			icon =user.getImageIcon();
			if (icon != null){
				this.setIcon(icon);
			}
		}
		if (selected) {
			this.setBorder(line);
		} else {
			this.setBorder(empty);
		}
		this.setPreferredSize(new Dimension(130, 40));
		return this;
	}
	
}

⌨️ 快捷键说明

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