gpt4 book ai didi

java - 具有 Windows 外观和感觉的半透明窗口?

转载 作者:行者123 更新时间:2023-11-30 11:40:55 25 4
gpt4 key购买 nike

我正在尝试 JDK7 的半透明窗口支持,发现它不能很好地适应 Windows 的外观和感觉。

这是我的代码:

JFrame.setDefaultLookAndFeelDecorated(true);
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
JFrame frame = new JFrame("Translucent Window");
frame.setOpacity(0.5F);
frame.setSize(640, 360);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}

这段代码正确地显示了一个半透明窗口。但是,如果我设置 Windows 外观:

UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

抛出异常:

Exception in thread "AWT-EventQueue-0" java.awt.IllegalComponentStateException: The frame is decorated

如果我使用 frame.setUndecorated(true) 禁用框架装饰,它会再次工作,但这不是我想要的,因为缺少标题栏。有什么办法可以解决这个问题吗?

最佳答案

请参阅本教程以了解如何使 JFrame 透明或半透明

http://blogofjavacrazy.blogspot.in/2007/03/transparent-window-in-java.html

我偶然发现了一个巧妙的小 hack,它实际上不是透明的,而是截取屏幕截图并将该小片段添加为背景。

查看此链接:

http://onjava.com/pub/a/onjava/excerpt/swinghks_hack41/index.html

关于java - 具有 Windows 外观和感觉的半透明窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12491821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com