com.sun.awt.AWTUtilities的使用

有時候,在Java中我們會設置窗口的透明度,有第三方方法,但JDK包中自帶的也有一種方法:

就是導入com.sun.awt.AWTUtilities

 

package com.lovemu.snow;

import java.awt.Color;

import javax.swing.JFrame;

import com.sun.awt.AWTUtilities;

public class Alpha extends JFrame {

	/**
	 * @author lovemu
	 * 透明窗體
	 */
	private static final long serialVersionUID = 1L;
	public Alpha(){
		this.setBackground(Color.pink);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setSize(200,100);
		this.setTitle("lovemu");
		this.setLocationRelativeTo(null);
	}
	public static void main(String[] args) {
		Alpha alpha=new Alpha();
		//alpha.setUndecorated(true);//設置是否裝飾,即是否去掉標題欄等
		AWTUtilities.setWindowOpacity(alpha, 0.6f);//設置透明度
		alpha.setVisible(true);
	}

}


其中,com.sun.awt.AWTUtilities需要額外導入(以Eclipse爲例:):

項目名上右鍵:

其中,rt.jar來自於D:\Java\jdk1.6.0_10\jre\lib,其中D:\Java爲JDK安裝目錄:

 

至此,程序中就可以使用該包了..

遺憾的是,加入了該包後,程序就不具有跨平臺性了,因爲以com.sun/sun開頭的是屬於非公開/爲了實現jre的、沒有後續保證,即未包括在發佈的JDK中..

如果要具有跨平臺性,可以使用第三方jar包,如使用 jna.jar + platform.jar 提供的WindowUtils類

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章