问题描述
有可能吗?我尝试设置Jframe的不透明度并设置背景,但没有成功。有什么简单而优雅的方法吗?
解决方法
您可以通过将JFrame的glassPane设置为具有半透明背景的可见JPanel来实现:
static void setDimmed(JFrame frame,boolean dimmed) {
JComponent newGlassPane = new JPanel();
if (dimmed) {
newGlassPane.setBackground(new Color(0x80000000,true));
}
frame.setGlassPane(newGlassPane);
newGlassPane.setVisible(dimmed);
}