简体   繁体   English

class 无法转换为 class javax.swing.tree.DefaultTreeCellRenderer 错误

[英]class cannot be cast to class javax.swing.tree.DefaultTreeCellRenderer error

public class jtre extends javax.swing.JFrame {
    static{
    
        try{
            
    UIManager.setLookAndFeel(NimbusLookAndFeel.class.getName());
        }catch (ClassNotFoundException ex){
            
        } catch (InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
            Logger.getLogger(jtre.class.getName()).log(Level.SEVERE, null, ex);}}
   
    public jtre() {
        initComponents();
         jTree1.setCellRenderer(new WarnaRender());
        
        DefaultTreeCellRenderer renderer = (DefaultTreeCellRenderer)jTree1.getCellRenderer();
         Icon closedIcon = new ImageIcon("/images/ve.png");
         Icon openIcon = new ImageIcon("/images/veya.png");
         Icon leafIcon = new ImageIcon("/images/xor.png");
         renderer.setClosedIcon(closedIcon);
         renderer.setOpenIcon(openIcon);
         renderer.setLeafIcon(leafIcon);   }
 
public class WarnaRender implements TreeCellRenderer{

    @Override
    public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
        JLabel label = new JLabel();
        label.setText(value.toString());
        label.setOpaque(true);
        if(row %2 == 1){
        label.setBackground(Color.RED);
        label.setForeground(Color.WHITE);
       } else {
        
        label.setBackground(Color.GREEN);
        label.setForeground(Color.RED); } 
        return label;}}   
    
     

I make a class which is called WarnaRender for coloring each node of jtree.我制作了一个名为 WarnaRender 的 class,用于为 jtree 的每个节点着色。 My code is working.我的代码正在运行。 After that I want to add icons to jtree and I encountered an error which is "ClassCastException: class WarnaRender cannot be cast to class javax.swing.tree.DefaultTreeCellRenderer (WarnaRender is in unnamed module of loader 'app'; javax.swing.tree.DefaultTreeCellRenderer is in module java.desktop of loader 'bootstrap')". After that I want to add icons to jtree and I encountered an error which is "ClassCastException: class WarnaRender cannot be cast to class javax.swing.tree.DefaultTreeCellRenderer (WarnaRender is in unnamed module of loader 'app'; javax.swing.tree .DefaultTreeCellRenderer 位于加载程序'bootstrap'的模块 java.desktop)"。 How can ı solve this problem?我怎么解决这个问题? Can you help me.你能帮助我吗。 I investigated this error in the İnternet but I couldnt find the solution.我在 İinternet 中调查了此错误,但找不到解决方案。 Please help my code.请帮助我的代码。 Thank you.谢谢你。

Your class WarnaRender does not extends DefaultTreeCellRenderer so you can not cast it to this class.您的 class WarnaRender不会扩展DefaultTreeCellRenderer ,因此您不能将其转换为该 class。

So extend from it:所以从它延伸:

public class WarnaRender extends DefaultTreeCellRenderer {

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 JTree-无法转换为javax.swing.tree.MutableTreeNode - JTree - cannot be cast to javax.swing.tree.MutableTreeNode Java Swing类无法转换为DefaultListModel - Java Swing class cannot be cast into DefaultListModel Java错误:javax.swing.JTable $ 1无法强制转换为javax.swing.table.DefaultTableModel - Java Error : javax.swing.JTable$1 cannot be cast to javax.swing.table.DefaultTableModel javax.swing.JPanel无法转换为javax.swing.JLayeredPane - javax.swing.JPanel cannot be cast to javax.swing.JLayeredPane javax.swing.JComboBox无法强制转换为javax.swing.ComboBoxModel - javax.swing.JComboBox cannot be cast to javax.swing.ComboBoxModel JButton无法转换为javax.swing.JComboBox - JButton cannot be cast to javax.swing.JComboBox [B 不能转换为 javax.swing.ImageIcon - [B cannot be cast to javax.swing.ImageIcon Java XML: ClassCastException class com.sun.org.apache.xerces.internal.dom.DeferredTextImpl cannot be cast to class javax.swing.text.Element - Java XML: ClassCastException class com.sun.org.apache.xerces.internal.dom.DeferredTextImpl cannot be cast to class javax.swing.text.Element 如何解决此错误“java.lang.ClassCastException: javax.swing.JList$3 无法转换为 javax.swing.DefaultListModel” - How to resolve this error “java.lang.ClassCastException: javax.swing.JList$3 cannot be cast to javax.swing.DefaultListModel” Java类强制转换异常,使用javax xml提供程序时发生Classloader错误? - Java Class cast exception, Classloader error on using javax xml providers?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM