Tree automatisch öffnen

Status
Nicht offen für weitere Antworten.

rooksvelt

Mitglied
hi leute!!

wie kann man einen Tree automatisch öffnen. Damit bei der Ausgabe gleich der JTree geöffnet is und man nicht erst einmal drauf klicken muss?

Code:
package com.cbm.vis.util;

import java.awt.*;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.util.*;
import javax.swing.*;
import javax.swing.JTable.PrintMode;
import javax.swing.tree.*;

import com.cbm.util.CBMIConstant;
import com.cbm.vis.cashbook.CBM_KBDelete;
import com.cbm.vis.cashbook.CBM_KBEntry;
import com.cbm.vis.cashbook.CBM_KBList;
import com.cbm.vis.cashbook.CBM_KBSearch;
import com.cbm.vis.cmanagment.CBM_CustomerList;
import com.cbm.vis.cmanagment.CBM_Customerentry;
import com.cbm.vis.cmanagment.CBM_Customerdelete;
import com.cbm.vis.main.CBMMain;

/****************************************************
 *  Name:    JTree mit Buttons                	  	*
 *  Author:  Thomas Rockenschaub              	  	*
 *  Date:    30.12.2006                           	*
 *  Modified Date: 5.1.2007							*	
 *  Version: 2.0 [Beta]                           	*
 *  ------------------------------------------------*
 *  Description: Tree um auf die diversen Funktion	*
 * 				 des Programms zugreifen zu können	*
 ***************************************************/

public class CBMJTree
implements CBMIConstant
{
	/* Konstante für die Größe des JTrees im Hauptfenster */
	private static final int m_sizex = 200;
	
	private CBM Kassabuch[] = {
            new CBM("  KB Eintrag     "),
            new CBM("  KB Editieren  "),
            new CBM("  KB Löschen  "),
            new CBM("  KB Auflisten  "),
            new CBM("  KB Drucken   ") };
     
     private CBM Kundenverwaltung[] = {
             new CBM("  Kundeneintrag      "),
             new CBM("  Kunden Editieren  "),
             new CBM("  Kunden Löschen  "),
             new CBM("  Kunden Auflisten  "),
             new CBM("  Kunden Drucken   ") };
     
    private CBM Administrator[] = {
             new CBM("  AD Einstellungen "),
             new CBM("  AD Benutzer          "),
             new CBM("  AD Login/Logout   "),
             new CBM("  AD Informationen ")};
     
     private Vector KBVector;
     private Vector KVVector;
     private Vector ADVector;
     private Vector rootVector;
     
     private JTree tree;
     private JScrollPane scroll;
     
   public CBMJTree()
   {
       KBVector = new NameVector("Kassabuch              ", Kassabuch);
       KVVector = new NameVector("Kundenverwaltung", Kundenverwaltung);
       ADVector = new NameVector("Administration        ", Administrator);
       Object rootNodes[] = { KBVector, KVVector,ADVector };
       rootVector = new NameVector("Root", rootNodes);
       tree = new JTree(rootVector);
       TreeCellRenderer renderer = new CBMCellRenderer();
       tree.setCellRenderer(renderer);
       scroll = new JScrollPane(tree);
       scroll.setMinimumSize(new Dimension(m_sizex,m_fgry));
   }
   
   public Component getJScrollPane()
   {
	   return scroll;
   }
}
     
class CBM
{
     String title;

     public CBM(String title)
     {
       this.title = title;
     }

     public String getTitle()
     {
       return title;
     }
}

class CBMCellRenderer
implements TreeCellRenderer
{
	 private JLabel titleLabel;
     private boolean choose=true;
     private int value1, value2;
     private JPanel renderer;
     private DefaultTreeCellRenderer defaultRenderer = new DefaultTreeCellRenderer();
     private Color backgroundSelectionColor;
     private Color backgroundNonSelectionColor;
     private JButton button;
     
     public CBMCellRenderer()
     {
    	renderer = new JPanel(new FlowLayout(FlowLayout.RIGHT,6,6));
        titleLabel = new JLabel(" ");
        titleLabel.setForeground(Color.blue);
        button=new JButton();
        renderer.add(button);
        backgroundSelectionColor = defaultRenderer.getBackgroundSelectionColor();
        backgroundNonSelectionColor = defaultRenderer.getBackgroundNonSelectionColor();
     }

     public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
     {
        Component returnValue = null;
     
        if ((value != null) && (value instanceof DefaultMutableTreeNode))
        {
           Object userObject = ((DefaultMutableTreeNode) value).getUserObject();
       
           if( userObject instanceof NameVector )
           { 
        	   String name = ((NameVector)userObject).toString(); 
        	   button.setText( name ); 
        	   returnValue = renderer; 
        	   
        	   if(selected)
        	   {
        		   renderer.setBackground(backgroundSelectionColor);
        	   }
        	   else
               {
                  renderer.setBackground(backgroundNonSelectionColor);
               }
              
               renderer.setEnabled(tree.isEnabled());
           }
           
           if (userObject instanceof CBM)
           {
              CBM book = (CBM) userObject;
              button.setText(book.getTitle());
              
              if (selected)
              {
            	 renderer.setBackground(backgroundSelectionColor);
                 String react = book.getTitle();
                  
            	 if(choose==false)
                 {
            		 if(react.equals("  KB Eintrag     "))
            			 value2=1;
            		 else if(react.equals("  KB Editieren  "))
            			 value2=2;
            		 else if(react.equals("  KB Löschen  "))
            			 value2=3;
            		 else if(react.equals("  KB Drucken   "))
            		 	 value2=4;
            		 else if(react.equals("  KB Auflisten  "))
           		 	 	 value2=5;
            		 else if(react.equals("  Kundeneintrag      "))
            			 value2=6;
            		 else if(react.equals("  Kunden Editieren  "))
            			 value2=7;
            		 else if(react.equals("  Kunden Löschen  "))
            			 value2=8;
            		 else if(react.equals("  Kunden Drucken   "))
            		 	 value2=9;
            		 else if(react.equals("  Kunden Auflisten  "))
           		 	 	 value2=10;
            		 else if(react.equals("  AD Einstellungen "))
            			 value2=11;
            		 else if(react.equals("  AD Benutzer          "))
            			 value2=12;
            		 else if(react.equals("  AD Login/Logout   "))
            			 value2=13;
            		 else if(react.equals("  AD Informationen "))
            		 	 value2=14;
            		 
            		 if(value1!=value2)
                		 choose=true; 
                 }
          
                 //Hier kann jetzt auf die Buttons reagiert werden 
                 if(choose==true)
                 {
                	 if(react.equals("  Kundeneintrag      ")) 
                	 {
                		 System.out.println(""+react);
                		 CBM_Customerentry Custentry=new CBM_Customerentry();
                		 CBMMain.setrightPanelComponent2(Custentry.getMainJPanel());
                		 value1=6;
                		 choose=false;
                	 }else if(react.equals("  Kunden Editieren  ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=7;
                		 choose=false;
                	 }else if(react.equals("  Kunden Löschen  ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_Customerdelete Custdelete=new CBM_Customerdelete();
                		 CBMMain.setrightPanelComponent2(Custdelete);
                		 value1=8;
                		 choose=false;
                	 }else if(react.equals("  Kunden Auflisten  ")) 
                	 { 
                		 System.out.println(""+react);
                		 CBM_CustomerList ShowCust=new CBM_CustomerList();
                		 CBMMain.setrightPanelComponent2(ShowCust.getMainJPanel());
                		 value1=10;
                		 choose=false;
                	 }else if(react.equals("  Kunden Drucken   ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=9;
                		 choose=false;
                	 }else if(react.equals("  KB Eintrag     ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_KBEntry entry=new CBM_KBEntry();
                		 CBMMain.setrightPanelComponent2(entry);
                		 value1=1;
                		 choose=false;
                	 }else if(react.equals("  KB Editieren  ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_KBSearch entry=new CBM_KBSearch();
                		 CBMMain.setrightPanelComponent2(entry);
                		 value1=2;
                		 choose=false;
                	 }else if(react.equals("  KB Löschen  ")) 
                	 {
                		 CBM_KBDelete entry=new CBM_KBDelete();
                		 CBMMain.setrightPanelComponent2(entry);
                		 System.out.println(""+react);
                		 value1=3;
                		 choose=false;
                	 }else if(react.equals("  KB Auflisten  ")) 
                	 { 
                		 CBM_KBList entry=new CBM_KBList();
                		 CBMMain.setrightPanelComponent2(entry);
                		 System.out.println(""+react);
                		 value1=5;
                		 choose=false;
                	 }else if(react.equals("  KB Drucken   ")) 
                	 {  	     
                		 new CBMPrintPreview();
                		 System.out.println(""+react);
                		 value1=4;
                		 choose=false;
                	 }else if(react.equals("  AD Einstellungen ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=11;
                		 choose=false;
                	 }else if(react.equals("  AD Benutzer            ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=12;
                		 choose=false;
                	 }else if(react.equals("  AD Login/Logout   ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=13;
                		 choose=false;
                	 }else if(react.equals("  AD Informationen ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=14;
                		 choose=false;
                	 } 
                 }
              }
              else
              {
                 renderer.setBackground(backgroundNonSelectionColor);
              }
             
              renderer.setEnabled(tree.isEnabled());
              returnValue = renderer;
           }
        }
       
        if (returnValue == null)
        {
           returnValue = defaultRenderer.getTreeCellRendererComponent(tree,value, selected, expanded, leaf, row, hasFocus);
        }
       
        return returnValue;
     }
}

class NameVector
extends Vector
{
	private static final long serialVersionUID = 1L;
	
	String name;

     public NameVector(String name)
     {
       this.name = name;
     }

     public NameVector(String name, Object elements[])
     {
        this.name = name;
        for (int i = 0, n = elements.length; i < n; i++)
        {
           add(elements[i]);
        }
     }

     public String toString()
     {
        return name;
     }
   }
 
B

Beni

Gast
Mit "expandPath" und "expandRow" kannst du einzelne Pfade/Spalten öffnen. Eine Methode die alles öffnet musst du aber selber schreiben (oder ergooglen).
 

rooksvelt

Mitglied
ja ich will nur 2 einzelne pfade öffnen!

ich habe 3 rootbuttons und 2 davon sollen gleich beim start geöffnet sein!

ich habe es jetzt mit expandPath versucht aber er macht mir rein gar nix!!

tree.expandPath(new TreePath(path));
wobei path ein string ist
 
B

Beni

Gast
Ein TreePath muss die Knoten-Objekte enthalten, nicht irgendwelche zusammenhangslosen Strings :wink:

Die Knoten kannst du über das TreeModel (jtree.getModel) abfragen. Da beginnst du mal mit der Wurzel (getRoot), und kannst dann auch irgendwelche Kinder der Wurzel abfragen.

Wenn du intensiv mit einem JTree arbeiten willst, ist es am einfachsten, wenn du das TreeModel selbst herstellst, oder wenigstens die Knoten (mit DefaultMutableTreeNodes) herstellst. Sonst ist es sehr mühsam, TreePath's aufzubauen.
 

André Uhres

Top Contributor
Code:
package tree;
/*
 * ExpandTreeDemo.java
 */
import java.awt.*;
import java.util.*;
import javax.swing.*;
import javax.swing.tree.*;
public class ExpandTreeDemo extends JFrame {
    private JTree tree;
    public ExpandTreeDemo() {
        tree = new JTree();
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        getContentPane().add(new JScrollPane(tree), BorderLayout.CENTER);
        setSize(400,300);
        setLocationRelativeTo(null);
        expandAll(tree, true);
    }
    // Wenn "expand" true ist, werden alle Nodes im Baum expandiert
    // andernfalls werden alle Nodes im Baum geschlossen
    public void expandAll(final JTree tree, final boolean expand) {
        TreeNode root = ((TreeNode)tree.getModel().getRoot()).getChildAt(0);
        // Den Baum vom Root aus durchlaufen:
        expandAll(tree, new TreePath(((DefaultTreeModel)tree.getModel()).getPathToRoot(root)), expand);
        root = ((TreeNode)tree.getModel().getRoot()).getChildAt(1);
        // Den Baum vom Root aus durchlaufen:
        expandAll(tree, new TreePath(((DefaultTreeModel)tree.getModel()).getPathToRoot(root)), expand);
        tree.requestFocusInWindow();
    }
    private void expandAll(final JTree tree, final TreePath parent, final boolean expand) {
        // Die Kinder durchlaufen:
        TreeNode node = (TreeNode)parent.getLastPathComponent();
        if (node.getChildCount() >= 0) {
            for (Enumeration e=node.children(); e.hasMoreElements(); ) {
                TreeNode n = (TreeNode)e.nextElement();
                TreePath path = parent.pathByAddingChild(n);
                expandAll(tree, path, expand);
            }
        }
        // "expand" / "collapse" geschieht von unten nach oben
        if (expand) {
            tree.expandPath(parent);
        } else {
            tree.collapsePath(parent);
        }
    }
    public static void main(final String args[]) {new ExpandTreeDemo().setVisible(true);}
}
 

rooksvelt

Mitglied
aber dabei habe ich ein kleines Problem wenn ich das kleine Programm in mein Programm einfüge dann funktioniert es zwar aber der ganze Bildschirm ist grau und erst nach mehr maligen drucken in den tree wird er sichtbar!

hier mein code

Code:
package com.cbm.vis.util;

import java.awt.*;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.util.*;
import javax.swing.*;
import javax.swing.JTable.PrintMode;
import javax.swing.tree.*;

import com.cbm.util.CBMIConstant;
import com.cbm.vis.cashbook.CBM_KBDelete;
import com.cbm.vis.cashbook.CBM_KBEntry;
import com.cbm.vis.cashbook.CBM_KBList;
import com.cbm.vis.cashbook.CBM_KBSearch;
import com.cbm.vis.cmanagment.CBM_CustomerList;
import com.cbm.vis.cmanagment.CBM_Customerentry;
import com.cbm.vis.cmanagment.CBM_Customerdelete;
import com.cbm.vis.main.CBMMain;
import com.cbm.vis.cadministration.CBMEinstellungen;

/****************************************************
 *  Name:    JTree mit Buttons                	  	*
 *  Author:  Thomas Rockenschaub              	  	*
 *  Date:    30.12.2006                           	*
 *  Modified Date: 5.1.2007							*	
 *  Version: 2.0 [Beta]                           	*
 *  ------------------------------------------------*
 *  Description: Tree um auf die diversen Funktion	*
 * 				 des Programms zugreifen zu können	*
 ***************************************************/

public class CBMJTree
extends JFrame
implements CBMIConstant
{
	/* Konstante für die Größe des JTrees im Hauptfenster */
	private static final int m_sizex = 200;
	
	private CBM Kassabuch[] = {
            new CBM("  KB Eintrag     "),
            new CBM("  KB Editieren  "),
            new CBM("  KB Löschen  "),
            new CBM("  KB Auflisten  "),
            new CBM("  KB Drucken   ") };
     
     private CBM Kundenverwaltung[] = {
             new CBM("  Kundeneintrag      "),
             new CBM("  Kunden Editieren  "),
             new CBM("  Kunden Löschen  "),
             new CBM("  Kunden Auflisten  "),
             new CBM("  Kunden Drucken   ") };
     
    private CBM Administrator[] = {
             new CBM("  AD Einstellungen "),
             new CBM("  AD Benutzer          "),
             new CBM("  AD Login/Logout   "),
             new CBM("  AD Informationen ")};
     
     private Vector KBVector;
     private Vector KVVector;
     private Vector ADVector;
     private Vector rootVector;
     
     private JTree tree;
     private JScrollPane scroll;
     
   public CBMJTree()
   {
       KBVector = new NameVector("Kassabuch              ", Kassabuch);
       KVVector = new NameVector("Kundenverwaltung", Kundenverwaltung);
       ADVector = new NameVector("Administration        ", Administrator);
       Object rootNodes[] = { KBVector, KVVector,ADVector };
       rootVector = new NameVector("Root", rootNodes);
       tree = new JTree(rootVector);
       TreeCellRenderer renderer = new CBMCellRenderer();
       tree.setCellRenderer(renderer);
       scroll = new JScrollPane(tree);
       scroll.setMinimumSize(new Dimension(m_sizex,m_fgry));
       expandAll(tree,true);
       setVisible(true);
   }
   
   // Wenn "expand" true ist, werden alle Nodes im Baum expandiert 
   // andernfalls werden alle Nodes im Baum geschlossen 
   public void expandAll(final JTree tree, final boolean expand) 
   { 
       TreeNode root = ((TreeNode)tree.getModel().getRoot()).getChildAt(0); 
       
       // Den Baum vom Root aus durchlaufen: 
       expandAll(tree, new TreePath(((DefaultTreeModel)tree.getModel()).getPathToRoot(root)), expand); 
       root = ((TreeNode)tree.getModel().getRoot()).getChildAt(1); 
       
       // Den Baum vom Root aus durchlaufen: 
       expandAll(tree, new TreePath(((DefaultTreeModel)tree.getModel()).getPathToRoot(root)), expand); 
       tree.requestFocusInWindow(); 
   } 
   
   private void expandAll(final JTree tree, final TreePath parent, final boolean expand) 
   { 
       // Die Kinder durchlaufen: 
       TreeNode node = (TreeNode)parent.getLastPathComponent(); 
       if (node.getChildCount() >= 0) { 
           for (Enumeration e=node.children(); e.hasMoreElements(); ) { 
               TreeNode n = (TreeNode)e.nextElement(); 
               TreePath path = parent.pathByAddingChild(n); 
               expandAll(tree, path, expand); 
           } 
       } 
       // "expand" / "collapse" geschieht von unten nach oben 
       if (expand) { 
           tree.expandPath(parent); 
       } else { 
           tree.collapsePath(parent); 
       } 
   } 
   
   public Component getJScrollPane()
   {
	   return scroll;
   }
}
 
class CBM
{
     String title;

     public CBM(String title)
     {
       this.title = title;
     }

     public String getTitle()
     {
       return title;
     }
}

class CBMCellRenderer
implements TreeCellRenderer
{
	 private JLabel titleLabel;
     private boolean choose=true;
     private int value1, value2;
     private JPanel renderer;
     private DefaultTreeCellRenderer defaultRenderer = new DefaultTreeCellRenderer();
     private Color backgroundSelectionColor;
     private Color backgroundNonSelectionColor;
     private JButton button;
     
     public CBMCellRenderer()
     {
    	renderer = new JPanel(new FlowLayout(FlowLayout.RIGHT,6,6));
        titleLabel = new JLabel(" ");
        titleLabel.setForeground(Color.blue);
        button=new JButton();
        renderer.add(button);
        backgroundSelectionColor = defaultRenderer.getBackgroundSelectionColor();
        backgroundNonSelectionColor = defaultRenderer.getBackgroundNonSelectionColor();
     }

     public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus)
     {
        Component returnValue = null;
     
        if ((value != null) && (value instanceof DefaultMutableTreeNode))
        {
           Object userObject = ((DefaultMutableTreeNode) value).getUserObject();
       
           if( userObject instanceof NameVector )
           { 
        	   String name = ((NameVector)userObject).toString(); 
        	   button.setText( name ); 
        	   returnValue = renderer; 
        	   
        	   if(selected)
        	   {
        		   renderer.setBackground(backgroundSelectionColor);
        	   }
        	   else
               {
                  renderer.setBackground(backgroundNonSelectionColor);
               }
              
               renderer.setEnabled(tree.isEnabled());
           }
           
           if (userObject instanceof CBM)
           {
              CBM book = (CBM) userObject;
              button.setText(book.getTitle());
              
              if (selected)
              {
            	 renderer.setBackground(backgroundSelectionColor);
                 String react = book.getTitle();
                  
            	 if(choose==false)
                 {
            		 if(react.equals("  KB Eintrag     "))
            			 value2=1;
            		 else if(react.equals("  KB Editieren  "))
            			 value2=2;
            		 else if(react.equals("  KB Löschen  "))
            			 value2=3;
            		 else if(react.equals("  KB Drucken   "))
            		 	 value2=4;
            		 else if(react.equals("  KB Auflisten  "))
           		 	 	 value2=5;
            		 else if(react.equals("  Kundeneintrag      "))
            			 value2=6;
            		 else if(react.equals("  Kunden Editieren  "))
            			 value2=7;
            		 else if(react.equals("  Kunden Löschen  "))
            			 value2=8;
            		 else if(react.equals("  Kunden Drucken   "))
            		 	 value2=9;
            		 else if(react.equals("  Kunden Auflisten  "))
           		 	 	 value2=10;
            		 else if(react.equals("  AD Einstellungen "))
            			 value2=11;
            		 else if(react.equals("  AD Benutzer          "))
            			 value2=12;
            		 else if(react.equals("  AD Login/Logout   "))
            			 value2=13;
            		 else if(react.equals("  AD Informationen "))
            		 	 value2=14;
            		 
            		 if(value1!=value2)
                		 choose=true; 
                 }
          
                 //Hier kann jetzt auf die Buttons reagiert werden 
                 if(choose==true)
                 {
                	 if(react.equals("  Kundeneintrag      ")) 
                	 {
                		 System.out.println(""+react);
                		 CBM_Customerentry Custentry=new CBM_Customerentry();
                		 CBMMain.setrightPanelComponent2(Custentry.getMainJPanel());
                		 value1=6;
                		 choose=false;
                	 }else if(react.equals("  Kunden Editieren  ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=7;
                		 choose=false;
                	 }else if(react.equals("  Kunden Löschen  ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_Customerdelete Custdelete=new CBM_Customerdelete();
                		 CBMMain.setrightPanelComponent2(Custdelete);
                		 value1=8;
                		 choose=false;
                	 }else if(react.equals("  Kunden Auflisten  ")) 
                	 { 
                		 System.out.println(""+react);
                		 CBM_CustomerList ShowCust=new CBM_CustomerList();
                		 CBMMain.setrightPanelComponent2(ShowCust.getMainJPanel());
                		 value1=10;
                		 choose=false;
                	 }else if(react.equals("  Kunden Drucken   ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=9;
                		 choose=false;
                	 }else if(react.equals("  KB Eintrag     ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_KBEntry entry=new CBM_KBEntry();
                		 CBMMain.setrightPanelComponent2(entry);
                		 value1=1;
                		 choose=false;
                	 }else if(react.equals("  KB Editieren  ")) 
                	 { 
                		 System.out.println(""+react); 
                		 CBM_KBSearch entry=new CBM_KBSearch();
                		 CBMMain.setrightPanelComponent2(entry);
                		 value1=2;
                		 choose=false;
                	 }else if(react.equals("  KB Löschen  ")) 
                	 {
                		 CBM_KBDelete entry=new CBM_KBDelete();
                		 CBMMain.setrightPanelComponent2(entry);
                		 System.out.println(""+react);
                		 value1=3;
                		 choose=false;
                	 }else if(react.equals("  KB Auflisten  ")) 
                	 { 
                		 CBM_KBList entry=new CBM_KBList();
                		 CBMMain.setrightPanelComponent2(entry);
                		 System.out.println(""+react);
                		 value1=5;
                		 choose=false;
                	 }else if(react.equals("  KB Drucken   ")) 
                	 {  	     
                		 new CBMPrintPreview();
                		 System.out.println(""+react);
                		 value1=4;
                		 choose=false;
                	 }else if(react.equals("  AD Einstellungen ")) 
                	 { 
                		 CBMEinstellungen adm=new CBMEinstellungen();
                		 CBMMain.setrightPanelComponent2(adm);
                		 System.out.println(""+react);
                		 value1=11;
                		 choose=false;
                	 }else if(react.equals("  AD Benutzer            ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=12;
                		 choose=false;
                	 }else if(react.equals("  AD Login/Logout   ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=13;
                		 choose=false;
                	 }else if(react.equals("  AD Informationen ")) 
                	 { 
                		 System.out.println(""+react);
                		 value1=14;
                		 choose=false;
                	 } 
                 }
              }
              else
              {
                 renderer.setBackground(backgroundNonSelectionColor);
              }
             
              renderer.setEnabled(tree.isEnabled());
              returnValue = renderer;
           }
        }
       
        if (returnValue == null)
        {
           returnValue = defaultRenderer.getTreeCellRendererComponent(tree,value, selected, expanded, leaf, row, hasFocus);
        }
       
        return returnValue;
     }
}

class NameVector
extends Vector
{
	private static final long serialVersionUID = 1L;
	
	String name;

     public NameVector(String name)
     {
       this.name = name;
     }

     public NameVector(String name, Object elements[])
     {
        this.name = name;
        for (int i = 0, n = elements.length; i < n; i++)
        {
           add(elements[i]);
        }
     }

     public String toString()
     {
        return name;
     }
   }
 

André Uhres

Top Contributor
Hoffentlich haben wir morgen schönes Wetter.

Ich kann leider deinen Bandwurmcode nicht testen weil es nur ein Fragment ist.
Mach vielleicht mal einen Versuch mit "invokeLater".

Ich mach inzwischen mal Kaffee.

Oder mach ein KSKB (siehe dazu "Lies mich" hier links nebendran).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Tree automatisch öffnen AWT, Swing, JavaFX & SWT 2
F JavaFX (Tree)TableView korrekt drucken AWT, Swing, JavaFX & SWT 1
4a61766120617274697374 dynamische Tree View AWT, Swing, JavaFX & SWT 2
I JavaFX BorderPane ins Tree einfügen AWT, Swing, JavaFX & SWT 11
F Swing Datenmodell in Tree spiegeln ohne Adapterklassen AWT, Swing, JavaFX & SWT 5
T SWT Warum ist mein 1.Tree Node selektiert? AWT, Swing, JavaFX & SWT 11
O Tree path expandieren AWT, Swing, JavaFX & SWT 2
Madlip SWT Tree mit einen Klick alles ausklappen AWT, Swing, JavaFX & SWT 3
J Knotenselect von bestimmten Knoten im Tree AWT, Swing, JavaFX & SWT 2
L SWT tree elemente markieren AWT, Swing, JavaFX & SWT 4
J SWT JFace Tree in Section unsichtbar (Eclipse Forms) AWT, Swing, JavaFX & SWT 5
L SWT Tree reagieren BEVOR selektiert wurde AWT, Swing, JavaFX & SWT 2
S SWT tree collapse AWT, Swing, JavaFX & SWT 4
W SWT Resize Tree-Element AWT, Swing, JavaFX & SWT 3
S Dropdown menu / tree AWT, Swing, JavaFX & SWT 7
P SWT Tree - Keine Selection zulassen AWT, Swing, JavaFX & SWT 4
G Swing Tree wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
B SWT SWT Tree mit mehreren Spalten AWT, Swing, JavaFX & SWT 3
A Swing JTree Tree Node löschen AWT, Swing, JavaFX & SWT 2
K SWT und Tree, wie kann ich TreeItem aus einem Tree entfernen? AWT, Swing, JavaFX & SWT 12
G SWT Tree AWT, Swing, JavaFX & SWT 4
S Tree - ArrayList Zuordnung! AWT, Swing, JavaFX & SWT 13
G Bezeichungen im Tree werden durch . gekürzt? AWT, Swing, JavaFX & SWT 5
G Drag And Drop von Component (List, Tree) zum Desktop AWT, Swing, JavaFX & SWT 2
T TREE AWT, Swing, JavaFX & SWT 3
T Tree AWT, Swing, JavaFX & SWT 2
G tree.setSize tut nicht AWT, Swing, JavaFX & SWT 5
S SWT Tree AWT, Swing, JavaFX & SWT 3
U Baum/Tree nach Benutzer anzeigen AWT, Swing, JavaFX & SWT 3
L Renderer mit nativen komponenten in tabelle / tree / list AWT, Swing, JavaFX & SWT 4
J [SWT] alle Zellen in einem Tree einzeln selektieren AWT, Swing, JavaFX & SWT 2
S TableTree - Tree nicht in erster Spalte AWT, Swing, JavaFX & SWT 5
R Tree-Struktur in einer DB abspeichern AWT, Swing, JavaFX & SWT 15
R Klick in einem Tree erkennen und auswerten AWT, Swing, JavaFX & SWT 6
F Ermittlung der X- und Y- Koordinaten im Tree bei Tastaturst. AWT, Swing, JavaFX & SWT 5
S [S] custom tree componente AWT, Swing, JavaFX & SWT 8
C tree action AWT, Swing, JavaFX & SWT 8
G Tree und expand eines bekannten Pfades AWT, Swing, JavaFX & SWT 5
F Tree-Knoten programmgesteuert auswählen AWT, Swing, JavaFX & SWT 3
J Tree nur mit Ordner anzeigen? AWT, Swing, JavaFX & SWT 4
W SWT - Tree: Problem mit Double-Click expand AWT, Swing, JavaFX & SWT 5
R Nur Verzeichnisse im Tree? AWT, Swing, JavaFX & SWT 5
G verzeichnis tree erstellen AWT, Swing, JavaFX & SWT 2
V Tree Ausgabe Problem AWT, Swing, JavaFX & SWT 2
JavaSchmecktLecker JavaFX JavaFX Ordner automatisch verlinken AWT, Swing, JavaFX & SWT 2
berserkerdq2 Skalieren sich javafx objekte automatisch auf die Bildschirmgröße AWT, Swing, JavaFX & SWT 6
berserkerdq2 Wie füge ich ein Bild in javafx mit dem Scenebuilder ein, das automatisch mitgezogen wird, wenn das Fenster vergrößert wird oder Vollbildmodus AWT, Swing, JavaFX & SWT 6
_user_q Gibt es eine Möglichkeit, in Java alle möglichen Zeichen automatisch tippen zu lassen? AWT, Swing, JavaFX & SWT 13
G JavaFX Wert aus DB lesen, wenn erfolgreich automatisch eine fxml laden, möglich? AWT, Swing, JavaFX & SWT 2
B JavaFX TableView-Zellen sollen automatisch so groß wie der größte Inhalt sein AWT, Swing, JavaFX & SWT 6
F JavaFX textField Ausgabe automatisch kopieren AWT, Swing, JavaFX & SWT 7
J Gridpane Breite in Scrollpane automatisch anpassen AWT, Swing, JavaFX & SWT 2
L ComboBox Wert automatisch auswählen AWT, Swing, JavaFX & SWT 6
L Swing Größe automatisch anpassen AWT, Swing, JavaFX & SWT 14
I CSS - backgroundImage - Größe automatisch an den Container anpassen AWT, Swing, JavaFX & SWT 1
P TreeView automatisch an große von Inhalt anpassen AWT, Swing, JavaFX & SWT 3
L Java FX Scrollpane automatisch resizen AWT, Swing, JavaFX & SWT 3
S Swing Bedienelemente ordnen sich automatisch neu an AWT, Swing, JavaFX & SWT 2
J JTextfield automatisch aus zweiter Klasse aktualisieren AWT, Swing, JavaFX & SWT 5
S Buttons und TextField automatisch vergrößern AWT, Swing, JavaFX & SWT 8
KilledByCheese 2D-Grafik Feld automatisch bewegen, in zeitabständen AWT, Swing, JavaFX & SWT 7
C AWT Textfelder werden nicht automatisch angezeigt AWT, Swing, JavaFX & SWT 2
G Properties automatisch laden AWT, Swing, JavaFX & SWT 10
W Bei Programmstart jRadioButton automatisch auswählen AWT, Swing, JavaFX & SWT 2
S JavaFX Fenstergrösse automatisch Speichern und Laden AWT, Swing, JavaFX & SWT 4
2 Zeit Differenz automatisch aktualisieren AWT, Swing, JavaFX & SWT 1
C Geloest: JTextfield: Titel automatisch entfernen, sobald Text eingegeben wird AWT, Swing, JavaFX & SWT 1
H AWT Fenster- und JLabel-Größe automatisch anpassen AWT, Swing, JavaFX & SWT 2
S Swing Automatisch 2px Rahmen in Windows 8 AWT, Swing, JavaFX & SWT 0
G Swing ComboBoxItem automatisch wählen AWT, Swing, JavaFX & SWT 4
B Swing Form undecorated: Beim Bewegen geht die Maus immer automatisch zur linken Seite. AWT, Swing, JavaFX & SWT 7
I JTable Spalten automatisch dem Inhalt anpassen! AWT, Swing, JavaFX & SWT 6
0 JTable Spaltenbreite automatisch an Inhalt anpassne geht nicht AWT, Swing, JavaFX & SWT 3
A combobox automatisch in ein textfeld wechseln AWT, Swing, JavaFX & SWT 3
K JSpinner in passender Breite erstellen oder automatisch anpassen AWT, Swing, JavaFX & SWT 2
C TextFeld in Verbindung zur ComboBox automatisch aktualisieren AWT, Swing, JavaFX & SWT 7
D JTable width automatisch anpassen AWT, Swing, JavaFX & SWT 4
R Swing Wie kann man Internal Frames automatisch ausrichten lassen? AWT, Swing, JavaFX & SWT 3
E JToggleButton automatisch nach drücken loslassen AWT, Swing, JavaFX & SWT 3
R Größe/Anordnung der Gui-Elemente automatisch? AWT, Swing, JavaFX & SWT 6
W Bildgröße automatisch an Komponenten anpassen AWT, Swing, JavaFX & SWT 3
B JScrollPane scrollt nicht immer automatisch AWT, Swing, JavaFX & SWT 2
C SWT-Elemente an View-Fenster angleichen und automatisch resizen AWT, Swing, JavaFX & SWT 3
B Fenstergröße automatisch skalieren AWT, Swing, JavaFX & SWT 7
C Textfeld automatisch befüllen AWT, Swing, JavaFX & SWT 6
R JTable: Spaltenbreite automatisch anpassen AWT, Swing, JavaFX & SWT 3
J SWT Dialog in Dialog automatisch öffnen AWT, Swing, JavaFX & SWT 19
W LayoutManager GridBag richtig nutzen - Komponenten richtig anordnen und automatisch vergrößern AWT, Swing, JavaFX & SWT 5
X JEditorPane Größe in JDialog automatisch anpassen AWT, Swing, JavaFX & SWT 2
U JComboBox automatisch zuklappen AWT, Swing, JavaFX & SWT 7
Y JCheckBoxen automatisch anlegen AWT, Swing, JavaFX & SWT 6
M Swing Eingabe auf JTextField automatisch ausgeben auf JLabel AWT, Swing, JavaFX & SWT 2
J Swing JList: Neue Zeilen mit fireIntervalAdded sind automatisch selektiert AWT, Swing, JavaFX & SWT 2
M LayoutManager JTextfield vergrößern sich automatisch AWT, Swing, JavaFX & SWT 4
T Swing Dialoginhalt automatisch anpassen während Größenänderung AWT, Swing, JavaFX & SWT 2
N ActionListener automatisch selektieren AWT, Swing, JavaFX & SWT 6
N JFrame mit Elementen an die Bildschirmgröße automatisch anpassen AWT, Swing, JavaFX & SWT 3
aze JTable automatisch vergrößern wenn das zugehörige JFrame vergrößert wird AWT, Swing, JavaFX & SWT 13
F Button soll automatisch geklickt werden AWT, Swing, JavaFX & SWT 3
R JSplitPane automatisch ausblenden AWT, Swing, JavaFX & SWT 13

Ähnliche Java Themen


Oben