2009-06-01 23 views
3

我能够在Java的主窗口(JFrame)的标题栏之外的任何地方显示日文字符。有没有办法改变这个标题栏的字体,以便它可以显示日语字符?谢谢在Java的TItle Bar中显示日文字符

我正在使用Windows XP。如果这个问题我使用Java物质的外观和感觉。

回答

3

窗口的标题栏由系统窗口管理器管理,而不是由Swing管理。你不会说你使用的是什么OS/GUI。

对于Windows XP,打开显示控制面板,选择“外观”选项卡,并单击“高级”按钮;您可以在那里更改标题字体(尽管系统上安装的字体可能没有您需要的字形)。

下面是一些代码,检查系统默认字体是否支持您所需要的字形(我不知道性格是什么,它是从片假名设定一个好看的字形):

import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.SwingUtilities; 

public class GlyphCheck 
{ 
    public static void main(String[] argv) throws Exception { 
     final String title = "Testing: \u30CD"; 
     SwingUtilities.invokeAndWait(new Runnable() { 
      public void run() { 
       JFrame frame = new JFrame(title); 
       frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
       JLabel label = new JLabel(title); 
       label.setSize(200, 100); 
       frame.setContentPane(label); 
       frame.pack(); 
       frame.setVisible(true); 
      } 
     }); 
    } 
} 
+0

我的操作系统是Windows XP。我已经尝试将我的活动标题栏更改为不同的字体,但它没有更改标题栏的字体。 – baseballtank13 2009-06-01 18:45:02

+0

在您评论的同一时间更新 - 您确定您选择的字体具有您正在使用的字符的字形吗?通过在Swing标签上设置该字体表面进行测试。也有可能你需要做一些像重启一样的Windowsware。 – kdgregory 2009-06-01 18:46:30

+0

这两个想法都没有奏效。有没有这样的线我可以使用... UIManager.put(“OptionPane。messageFont“,new FontUIResource(new Font(”Dialog“,Font.PLAIN,11))); ... for main title? – baseballtank13 2009-06-01 18:53:28

0

在为了覆盖帧的字体,你需要告诉外观和外观。这可能是也可能不是可取的,但是否则你将会受制于系统的摆布。有些外观和感觉有相当不错的窗饰,其他则不是。物质的没关系。告诉UIManager也使用什么字体。

// Do this before you display any JFrame. 
UIManager.put("Frame.font", new Font("Japanese", 12, Font.PLAIN)); 
JFrame.setDefaultLookAndFeelDecorated(true); 

JFrame frame = new JFrame(title); 

这种方法(它应该工作 - 没有测试过对不起!),将意味着你就可以瞒着,他们需要改变自己的Windows设置,按照对方的回答用户分发程序。

1
JFrame.setDefaultLookAndFeelDecorated(true); 
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); 
UIManager.put("InternalFrame.titleFont", Resources.jaDefault.deriveFont(16.0f)); 

Try it ;) 
0

我不熟悉Java的物质,但在一个web应用程序工作时,我经历了这一点。基本上,日文,中文和韩文字符会显示在页面内容中,但不会显示在浏览器标题栏中。

这是由于窗口系统控制这个标题栏而不是浏览器。根据kdgregory的评论,这听起来像是和你的情况类似。

对于窗口系统,了解人物和不显示不支持的“盒子”,你必须确保安装设置适当的角色。对于Windows XP,以下步骤解决了浏览器标题栏的问题:

  1. 在Windows的“开始”菜单上,打开“控制面板”。
  2. 单击区域和语言选项图标,然后单击语言选项卡。
  3. 在“附加语言支持”框中,选中“安装东亚语言文件”框。
  4. 单击应用并确定。