是否可以在java 7中使用半透明窗口,包括标题栏?

rog*_*ack 7 java swing jframe translucency java-7

与此问题相关: Java Tutorials半透明窗口示例是否给那些使用jdk7的人带来麻烦?

使用jdk1.6.0_26我似乎能够将半透明应用于JFrame,但jre7不是这样:

NativeException:java.awt.IllegalComponentStateException:框架已装饰

ex(jruby脚本java,工作jdk1.6但不是jdk7):


require 'java'

class MouseDraw

  def self.go
    java_import 'javax.swing.JFrame'
    java_import 'com.sun.awt.AWTUtilities'

    f = JFrame.new
    AWTUtilities.set_window_opacity(f, 0.5)
    f.set_size 200,200
    f.show
  end

end
MouseDraw.go

所以我的问题是"是否有可能在jdk7中有一个半透明的标题栏"(我想要一个透明窗口,我正在创建可拖动/可调整大小)

Joa*_*uer 8

引入Java 7 Window.setOpacity()来做非官方类AWTUtilities在Java 6中所做的事情.

不幸的是,它记录不适用于装饰窗口:

必须满足以下条件才能将不透明度值设置为小于1.0f:

(强调我的)

  • 不幸的是,这是一个破坏现有代码的行为改变...... (3认同)