SkinLF乱码问题的分析与解决

SkinLF乱码问题的分析与解决

     SkinLFhttp://www.l2fprod.com/)是一个非常漂亮的Java LookAndFee组件,它的外观可以配置,由一组小图片和一个skinlf-themepack.xml构成。SkinLF的网站上提供了很多Skin下载,这里http://www.l2fprod.com/software/skinlf/jnlp/demo.jnlp可以看到SkinLF和这些外观的演示。可惜的是除了默认的themepack.zip之外,其他外观(好像有很少几个除外)都有中文乱码的问题。其实这是这些外观使用的字体导致的。

打开外观zip文件中的skinlf-themepack.xml,你会发现其他外观的配置文件比themepack.zip中的配置文件多了一些地方:

1 < font  name ="Global"  value ="SansSerif,0,11"   />  
2 < font  name ="InternalFrame.titleFont"  value ="Trebuchet MS,1,11"   />  
3 < font  name ="TabbedPane.font"  value ="Tahoma,0,11"   />  
4 < font  name ="MenuBar.font"  value ="Tahoma,0,11"   />  
5 < font  name ="MenuItem.font"  value ="Tahoma,0,11"   />  
6 < font  name ="PopupMenu.font"  value ="Tahoma,0,11"   />  
7 < font  name ="Menu.font"  value ="Tahoma,0,11"   />

把这些注释掉,然后把配置文件放回到zip文件中就可以了。 

  附:SkinLF的使用

1 import  com.l2fprod.gui.plaf.skin.Skin;
2 JFrame.setDefaultLookAndFeelDecorated( true );
3 JDialog.setDefaultLookAndFeelDecorated( true );
4 File file = new  File( "" );
5 URL url = new  URL(file.toURL() + " /crystal2themepack.zip " );
6 Skin skin  =  SkinLookAndFeel.loadThemePack(url);
7 SkinLookAndFeel.setSkin(skin);
8 UIManager.setLookAndFeel( " com.l2fprod.gui.plaf.skin.SkinLookAndFeel " );

你可能感兴趣的:(SkinLF乱码问题的分析与解决)