为什么我把JTREE节点设置成JRadiobutton以后,根本就无法使用,单选按钮就成了一图标,根本不能点。我该怎么办?核心代码如下:
package gui;import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.UIManager;
import javax.swing.tree.TreeCellRenderer;public class NeNodeRenderer extends JPanel implements TreeCellRenderer { private static final long serialVersionUID = -626534216686281195L; private JRadioButton radio = new JRadioButton(); private JLabel label=new JLabel(); protected boolean m_selected;
public NeNodeRenderer() {
this.setLayout(new BorderLayout());
} public Component getTreeCellRendererComponent(
JTree tree, Object value,
boolean selected, boolean expanded,
boolean leaf, int row, boolean hasFocus) {


NeTreeNode node = (NeTreeNode) value; ImageIcon icon = null; if(node.isRootNode())
icon = new ImageIcon("d:\\subnetwork.gif");
else if(node.isAdminDomainTypeNode())
icon = new ImageIcon("d:\\USPP_ADMINDOMAINTYPE.gif");
else if(node.isVHLRNode())
icon = new ImageIcon("D:\\USPP_ADMINDOMAIN.gif");
label.setIcon(icon);
label.setText(node.toString());
label.setToolTipText(node.toString()); radio.setSelected(node.isAllSelectedState());
radio.setEnabled(true);
if(node.isVHLRNode()){
this.add(label,BorderLayout.CENTER);
this.add(radio,BorderLayout.WEST);
}else{
this.add(label,BorderLayout.CENTER);
} setFont(tree.getFont());
m_selected = selected;
return this;
}
}