substance.jar的使用方法(附下載路徑)
substance.jar包和JTattoo.jar包的下載
1.將substance.jar新增到類路徑中
2.將下列程式碼新增到你的程式的主執行類的main()方法中:
try {
UIManager.setLookAndFeel(new SubstanceLookAndFeel());
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
SubstanceLookAndFeel.setCurrentTheme(new SubstanceTerracottaTheme());
// SubstanceLookAndFeel.setSkin(new EmeraldDuskSkin());
// SubstanceLookAndFeel.setCurrentButtonShaper(new ClassicButtonShaper());
// SubstanceLookAndFeel.setCurrentWatermark(new SubstanceBubblesWatermark());
// SubstanceLookAndFeel.setCurrentBorderPainter(new StandardBorderPainter());
// SubstanceLookAndFeel.setCurrentGradientPainter(new StandardGradientPainter());
// SubstanceLookAndFeel.setCurrentTitlePainter(new FlatTitePainter());
} catch (Exception e) {
System.err.println("Something went wrong!");
}
這個地方主要介紹一下關於使用substance.jar包裝程式時對介面效果的幾個方面的設定,主要要主題,面板,按鈕型別,水印,邊框渲染,漸變渲染與標題欄渲染.
共有22種皮膚,69種主題。
1. 下載下來substance.jar包後,解壓JAR檔案,可以看到在“org/jvnet/substance/skin”下有下面這些面板(以LookAndFeel.class結尾的檔案)。
SubstanceAutumnLookAndFeel.class
SubstanceBusinessBlackSteelLookAndFeel.class
SubstanceBusinessBlueSteelLookAndFeel.class
SubstanceBusinessLookAndFeel.class
SubstanceChallengerDeepLookAndFeel.class
SubstanceCremeLookAndFeel.class
SubstanceEmeraldDuskLookAndFeel.class
SubstanceFieldOfWheatLookAndFeel.class
SubstanceGreenMagicLookAndFeel.class
SubstanceMagmaLookAndFeel.class
SubstanceMangoLookAndFeel.class
SubstanceMistAquaLookAndFeel.class
SubstanceMistSilverLookAndFeel.class
SubstanceModerateLookAndFeel.class
SubstanceNebulaBrickWallLookAndFeel.class
SubstanceNebulaLookAndFeel.class
SubstanceOfficeBlue2007LookAndFeel.class
SubstanceOfficeSilver2007LookAndFeel.class
SubstanceRavenGraphiteGlassLookAndFeel.class
SubstanceRavenGraphiteLookAndFeel.class
SubstanceRavenLookAndFeel.class
SubstanceSaharaLookAndFeel.class
要使用上述面板很簡單,只要在main函式中呼叫下面程式碼即可:
//主要設定面板、主題還有按鈕、水印、選項卡、滑動條以及水印等
//UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceBusinessLookAndFeel");
//UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceOfficeSilver2007LookAndFeel");
//UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceSaharaLookAndFeel");
//UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel");
UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceBusinessBlackSteelLookAndFeel");
2. org/jvnet/substance/theme 下有所有可用的主題:
SubstanceAquaTheme.class
SubstanceBarbyPinkTheme.class
SubstanceBlendBiTheme.class
SubstanceBottleGreenTheme.class
SubstanceBrownTheme.class
SubstanceCharcoalTheme.class
SubstanceColorBlindTheme.class
SubstanceComplexTheme.class
SubstanceCremeTheme.class
SubstanceDarkVioletTheme.class
SubstanceDesertSandTheme.class
SubstanceDeuteranopiaTheme.class
SubstanceEbonyTheme.class
SubstanceHueShiftTheme.class
SubstanceInvertedTheme.class
SubstanceJadeForestTheme.class
SubstanceLightAquaTheme.class
SubstanceLimeGreenTheme.class
SubstanceMixBiTheme.class
SubstanceMixTheme.class
SubstanceNegatedTheme.class
SubstanceOliveTheme.class
SubstanceOrangeTheme.class
SubstanceProtanopiaTheme.class
SubstancePurpleTheme.class
SubstanceRaspberryTheme.class
SubstanceSaturatedTheme.class
SubstanceSepiaTheme.class
SubstanceShadeTheme.class
SubstanceSteelBlueTheme.class
SubstanceSunGlareTheme.class
SubstanceSunsetTheme.class
SubstanceTerracottaTheme.class
SubstanceTheme$1$1.class
SubstanceTheme$1.class
SubstanceTheme$10.class
SubstanceTheme$11.class
SubstanceTheme$12.class
SubstanceTheme$13.class
SubstanceTheme$14.class
SubstanceTheme$15.class
SubstanceTheme$16.class
SubstanceTheme$17.class
SubstanceTheme$18.class
SubstanceTheme$19.class
SubstanceTheme$2.class
SubstanceTheme$20.class
SubstanceTheme$21.class
SubstanceTheme$22.class
SubstanceTheme$23.class
SubstanceTheme$24.class
SubstanceTheme$25.class
SubstanceTheme$26.class
SubstanceTheme$27.class
SubstanceTheme$28.class
SubstanceTheme$3.class
SubstanceTheme$4.class
SubstanceTheme$5.class
SubstanceTheme$6.class
SubstanceTheme$7.class
SubstanceTheme$8.class
SubstanceTheme$9.class
SubstanceTheme$ThemeKind.class
SubstanceTheme.class
SubstanceTintTheme.class
SubstanceToneTheme.class
SubstanceTritanopiaTheme.class
SubstanceUltramarineTheme.class
SubstanceWrapperTheme.class
改變介面的預設主題也很簡單,只需要加上以下程式碼就可以了(不過貌似5.0以上沒有這個方法了,且substance下也沒有theme檔案夾了)。另外5.0版本以上必須將這些語句置於
Java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
//此處設定面板和主題
});
的run方法中,否則會出錯。
SubstanceLookAndFeel.setCurrentTheme("org.jvnet.substance.theme.SubstanceDarkVioletTheme");
另外如果想讓整體介面變得協調,最好設定容器窗體的DefaultLookAndFeelDecorated屬性為true。
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
當然除了設定面板和主題外,還可以設定按鈕、水印、選項卡、滑動條以及水印、字型、標題等的觀感。具體的可以檢視substance\org\jvnet\substance目錄。方法同上面講的一樣。