Je viens de rencontrer les utilitaires (com.sun.awt.AWTUtilities
) pour rendre votre JFrame vraiment transparent. Documentation here. Cela fonctionne très bien. Même sous Linux avec les effets de bureau avec les fenêtres bancales allumées (Here a little video)! Mais je veux faire aussi un composant non transparent sur le JFrame transparent.Java: Fenêtres transparentes avec des composants non transparents?
Est-ce que quelqu'un sait, si c'est possible, comment?
Voici le code je:
import com.sun.awt.AWTUtilities;
/* "this" is the JFrame */
this.setUndecorated(true);
AWTUtilities.setWindowOpaque(this, true);
AWTUtilities.setWindowOpacity(this, 0.5f);
AWTUtilities.setWindowShape(this, new RoundRectangle2D.Float(0f, 0f, (float) getWidth(), (float) getHeight(), 15f, 15f));
Merci
Cela ne fonctionne pas sous Linux ... Sur Mac, c'est la solution à mon problème ... Triste ... –
@Martijn Courteaux: Et bien, la démo 'AWTUtilities':" Notez que les effets peut ne pas être supporté par la plateforme sous-jacente ... " – trashgod