效果圖:

很多軟件如:QQ,Winamp等等都使用到各種不同規則的窗體,那么,在JAVA中如何實現不規則窗體呢?
Java這方面的文章或代碼是少之又少,在JavaWorld上有一篇文章實現了JDK1.3環境下顯示笑臉的窗體(如下圖),嚴格來說此文實現的是Canvas本地繪制。

另外我還找到一個小日本的介紹透明Frame的網站,上面介紹他們實現的不規則窗體(如下圖,其實他們實現的是透明窗體),他們用Robot.createScreenCapture的方法截屏然后畫在窗體上,甚至用到線程來循環截屏, 可以說是笨得不行。沒辦法,就小日本那智商也只能做到這種地步,對它們也不能要求那么高。

我自己也做了一個不規則窗體的小軟件,自我感覺良好,炫耀一下。:D
請注意:
這是一個非開源軟件,請不要向我要源碼,謝謝。
申明:
本軟件為非開源軟件,僅作學習用途。
未經授權禁止轉載、摘編、復制或建立鏡像。
如有違反,追究法律責任。
作者:羅時民(SunKing)
Email:SunKingXie@hotmail.com
實現功能:
任何不規則透明圖片都可作為窗體的外形。
原理:
Java 調用 JNI。具體一點就是Java類中的native方法調用VC++實現。
重點:
VC中調用SetWindowRgn方法可使窗體按給定的HRGN參數繪制窗體。
運行環境:
在正常安裝JDK1.4以上版本的機器上,解壓下載的文件得到IrregularJFrame.exe和IrregularJFrame.dll兩個文件,將這兩個文件放在同一目錄下。運行IrregularJFrame.exe
下載:
IrregularJFrame.zip