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

本文探讨了如何在Java中实现透明窗口的功能,特别是针对Windows 7系统。由于Java默认不支持直接操作系统的透明效果,文章介绍了一种通过隐藏JFrame的标题栏并自定义绘制的方法来实现这一效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

 

 

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

 

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值