Z-Index einer Componente

ChMaster

Mitglied
Z-Index einer Komponente

Servus,

ich habe eine Layoutarea auf dieser sind verschiedene Komponenten. Die Layoutarea hat ja bekannterweise den Z-Index -1. Auf dieser Layoutarea ist ein Arbeitsbereich (JPanel = Z-Index 0) in dem ich arbeite. In diesen Bereich füge ich weitere Komponente hinzu. Das Problem besteht darin das er mir die hinzugefügten Komponenten hinter den Arbeitsbereich setzt. Wie bekomme ich es hin das er mir die Komponenten über den Arbeitsbereich setzt.

Mit setComponentZOrder( c, index ) geht es leider nicht.

Hier mal der Code wie ich es derzeit mach:
Java:
    private void setObjectZIndex()    
    {
        int index = 1;
        Component[] components = getComponents();
        for( int i = components.length - 1; i >= 0; i-- )
        {
            Component c = components[i];
            if( (c.getName() == null) && (c != null) )
            {
                System.out.println("Z-Index: " + index);
                setComponentZOrder( c, index );
                c.requestFocusInWindow();
                ++index;
            }            
        }
    }

Die Komponenten sollen nicht mit this.add(...); auf den Arbeitsbereich plaziert werden. Sprich ich meine eine Überlappung der Komponenten (Z-Index). Kann mir einer von euch helfen wie ich es richtig mache bzw. mir einen Tipp oder ein Beispiel geben?


Danke schon mal im Vorraus.
 
Zuletzt bearbeitet:
Hm .... man muss erstmal drauf kommen .........

Die Lösung ist sehr einfach. Man nehme ein JLayeredPane anstatt eines JPanels und sagt jeder einzelnen Komponente im JLayeredPane "moveToFront( component );" und schwups alles ist im Vordergrund.

Danke dennoch für eure Hilfe. :)
 
Zurück