免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
讓你的Java程序外觀更酷
Java應(yīng)用程序與其他應(yīng)用程序相比常常顯得非常樸素。然而,通過改變Swing Look and Feel(LAF)可以很容易地使你的Java程序生動起來。

LAF系統(tǒng)是Swing的強大特性之一,它使得Java應(yīng)用程序能夠像原生程序一樣被裝飾起來。。通過改變程序的外觀,你能夠人們對你的程序的看法。



Java的Swing庫缺省使用Metal LAF,但所有版本的Swing都帶有包含了Motif LAF的ui.jar。另外,Windows版本的Swing包含Windows LAF,OS X版本的則包含Mac LAF。

try {
 UIManager.setLookAndFeel("javax.swing.plaf.motif.MotifLookAndFeel");
//UIManager.setLookAndFeel("javax.swing.plaf.windows.WindowsLookAndFeel");
//UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
//UIManager.setLookAndFeel("com.apple.mrj.swing.MacLookAndFeel");
} catch(ClassNotFoundException cnfe) {
    cnfe.printStackTrace( );
} catch(InstantiationException ie) {
    ie.printStackTrace( );
} catch(IllegalAccessException iae) {
    iae.printStackTrace( );
} catch(UnsupportedLookAndFeelException ulafe) {
    ulafe.printStackTrace( );
}
// ‘frame‘ 是最高層的組件
SwingUtilities.updateComponentTreeUI(frame);

在try/catch塊中,當(dāng)UIManager被更新時,已存在的組件不會被更新。這些組件的更新要通過調(diào)用SwingUtilities的方法updateComponentTreeUI(java.awt.Component)。將最高層次的圖形用戶界面(GUI)組件傳遞給這個方法,所有的外觀風(fēng)格都會被更新。

Metal LAF比其他的外觀更強大一些,因為它是可主題化的。改變背景顏色只是Metal LAF廣泛的可主題化屬性之一,UIManager可為單個特定組件或整個平臺設(shè)置用戶訂制的主題。例如。你可以在任意LAF中像這樣指定一個組件的背景顏色:

UIManager.put("Tree.background",Color.yellow);

無論如何,Metal LAF允許你像這樣用一個BackgroundTheme類修改整個Swing外觀的背景:

package com.generationjava.swing;importjava.awt.Color;import javax.swing.plaf.ColorUIResource;import javax.swing.plaf.metal.DefaultMetalTheme;public class BackgroundTheme extends DefaultMetalTheme {    private final ColorUIResource resource;    public BackgroundTheme(Color color) {        this.resource = new        ColorUIResource(color);    }    public ColorUIResource getSecondary3( ) {    return this.resource;    }}  

BackgroundTheme類可以像下面這樣使用:

importjavax.swing.UnsupportedLookAndFeelException;import javax.swing.UIManager;import javax.swing.plaf.metal.MetalLookAndFeel;....MetalLookAndFeel.setCurrentTheme(new BackgroundTheme(Color.yellow ) );    try {        UIManager.setLookAndFeel( new MetalLookAndFeel( ) );    } catch(ClassNotFoundException cnfe) {        cnfe.printStackTrace( );    } catch(InstantiationException ie) {        ie.printStackTrace( );    } catch(IllegalAccessException iae) {        iae.printStackTrace( );    } catch(UnsupportedLookAndFeelException ulafe) {        ulafe.printStackTrace( );    }

注意:一旦MetalLookAndFeel被更改,要用setLookAndFeel方法重新裝載它。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Swing框架之UI Delegate之一
UIManager類
java Swing 自由換膚
用java打造任意形狀窗口和透明窗口
java中帶CheckBox的Tree
CentOS6.5 靜默安裝Oracle 11g過程中提示:Exception in thread “main” java.lang.NoClassDefFoundError
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服