Я только что встретил утилиты (com.sun.awt.AWTUtilities
), чтобы сделать JFrame действительно прозрачным Документация здесь . Это работает очень хорошо. Даже в Linux с эффектами рабочего стола при включенных шатких окнах. Но я хочу также сделать непрозрачный компонент на прозрачном JFrame.
Кто-нибудь знает, если это возможно, то как?
Вот код, который я использовал:
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));