java - 创建一个完全透明的JFrame

标签 java swing jframe awt transparency

我有以下类(class)

public class FileCopyManager extends JFrame{

   public static final Color TRANSPARENT_COLOR = new Color(0,0,0,0);
   public FileCopyManager(){
     this.setBackgroundColor(TRANSPARENT_COLOR);
   }
   public static void main(String[] args) {
        SwingUtilities.invokeLater(()->{
             try {
                UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
            }
            catch (Throwable e) {
            }
            finally{
                new FileCopyManager();
            }
         });
    }
}

但是,当我尝试运行该程序时,出现以下错误:

Exception in thread "AWT-EventQueue-0" java.awt.IllegalComponentStateException: The frame is decorated
    at java.awt.Frame.setBackground(Unknown Source)

有什么想法为什么会发生这种情况吗?

最佳答案

好吧,只需使用this.setUndecorated(true)

关于java - 创建一个完全透明的JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39679426/

相关文章:

java - Mockito 测试错误。需要但未调用的异常

java - 模糊内核分离以进行两次渲染

java - JMenuBar 未出现(仅显示细灰线)

java - 单击 JFrame 中的按钮将数据传递到 JPanel

java - 修改 ArrayList 中的值

java - 如果在根上下文中声明,为什么 spring-ws 不会检测到 spring 配置文件。

java - AWTUtilities.setWindowOpaque 导致一些文本绘制问题

java - JPanel 按钮不在正确的位置

java - EventQueue 和 EventDispatch 错误

java - 将 JFrame 加载到 html 中