📄 mytreecellrenderer.java
字号:
package com.softfz.jn0708.chat.userlistpanel;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.net.URL;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JTree;
import javax.swing.border.Border;
import javax.swing.tree.TreeCellRenderer;
import com.softfz.jn0708.images.Images;
import com.softfz.jn0708.srcpackage.TCompany;
import com.softfz.jn0708.srcpackage.TDepartment;
import com.softfz.jn0708.srcpackage.TUser;
/**
* 聊天窗体 用户列表树的绘制器 类
* @author admin
*
*/
public class MyTreeCellRenderer extends JLabel implements TreeCellRenderer {
private Border line = BorderFactory.createLineBorder(Color.green);
private Border empty = BorderFactory.createEmptyBorder();
public Component getTreeCellRendererComponent(JTree tree, Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus) {
URL url ;
ImageIcon icon;
if (value instanceof TCompany){
TCompany c = (TCompany)value;
this.setText(c.getName());
if (expanded){
url = Images.class.getResource("tree/0.gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}else{
url = Images.class.getResource("tree/2.gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}
}else if(value instanceof TDepartment){
TDepartment d = (TDepartment)value;
this.setText(d.getDname());
if (expanded){
url = Images.class.getResource("tree/2.gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}else{
url = Images.class.getResource("tree/1.gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}
}else if(value instanceof TUser){
TUser user = (TUser)value;
this.setText(user.getUTERM()+"[" + user.getUNO()+"]");
if(user.getUISONLINE().trim().equals("1")){
url = Images.class.getResource("head/"+user.getUICONID()+".gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}else if(user.getUISONLINE().trim().equals("0")){
url = Images.class.getResource("gray/"+user.getUICONID()+".gif");
icon = new ImageIcon(url);
this.setIcon(icon);
}
}
if (selected)
this.setBorder(line);
else
this.setBorder(empty);
this.setPreferredSize(new Dimension(130,25));
//this.validate();
return this;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -