Salve a tutti, non riesco a trovare in rete qualcuno che abbia avuto il mio stesso problema (o meglio, uno l'avevo trovato qualche giorno fa, ma ora è mezzora che lo cerco e non lo ritrovo ). Come da titolo, quando rendo visibile il mio GlassPane traslucido (effetto "finestra oscurata"), ciò che si vede dietro è un minestrone dei components della finestra: ogni components cambia la sua posizione, si sovrappone agli altri, si nasconde o quello che più gli pare e piace.
Nel momento in cui nascondo il GlassPane, tutto alla normalità.
Ora, questo non da problemi di utilizzo, dato che quando il GlassPane è attivo, i components dietro non sono utilizzabili, ma potete ben immaginare quanto faccia schifo da vedere

Posto il codice, per quanto possa servire:
1.Classe GlassPane
codice:
public class GlassPane extends JPanel{
	
	public GlassPane(){		
		super();
    	setBackground(new Color(0, 0, 0, 100));
	}
	
}
2.Nella classe del JFrame la dichiarazione e, nel costruttore, l'inizializzazione del GlassPane. Sotto, i due metodi con i quali "attivo" e "disattivo" il GlassPane.
codice:
    private GlassPane glasspane;
    	
    private Finestra() {
        
        [...]
         
        glasspane = new GlassPane();
        setGlassPane(glasspane);

       [...]


    }
    
    public void oscura(){
    	if(isVisible())
    		glasspane.setVisible(true);
    }
    public void ripristina(){
    	if(glasspane!=null)
    		if(glasspane.isVisible())
    			glasspane.setVisible(false);
    }