swing学习 - JFrame的透明度定义和不规则窗口制作

office2007在window7上显示为一个图标跨越标题行和菜单行,标题行为一个透明的窗体,显得非常的整洁。

 

 

 

使用java编写这个功能,首先想到是JFrame,本打算采用自定义laf的方式可以将图片盖在标题行的位置,但是经过分析代码发现,其实透明的标题行是window7自己生成的,java操作的代码都会在他的标题行的下面,所以无法操作到标题行。为了达到这个目标,考虑首先将窗体的标题行隐藏,自己通过java定制一个透明的标题行出来就可以。

 

    为了满足这个要求,首先需要将JFrame进行透明化,然后上面覆盖了Panel,将边框创建出来。经过查询发现当前在jdk6中已经有一个类可以满足这个功能要求,详细看http://java.sun.com/developer/technicalArticles/GUI/translucent_shaped_windows/,其中说明了如何定义一个透明的窗体,当前这个透明的方式是sun进行开发的,还没有放到jdk的正式发布版本中,可能会在下一版本中纳入jdk的正式范围内。下面去开发测试,等开发完成后上传开发的效果。

 

你可能感兴趣的:(java,jdk,windows,swing,sun)