Windows XP是否支持SWT Java程序中的unicode按钮文本?

时间:2011-07-08 08:32:48

标签: java windows unicode swt

我在SWT Java UI中包含了几个unicode箭头,并且刚刚注意到我的Windows XP机器没有呈现这些字符。

XP Button on Windows XP

7 Button on Windows 7

Windows XP不支持unicode UI文本,还是需要做一些特殊的事情才能启用支持?

1 个答案:

答案 0 :(得分:2)

这里的关键问题是默认的XP UI字体是Tahoma,其字符集非常有限。通过打开Character Map应用程序可以看到这一点。

当UI字体为Tahoma时,可以通过选择适当的字符来解决此问题。我选择了这些字符:

private static final String UP = "\u25B2";
private static final String DOWN = "\u25BC";
private static final String RIGHT = "\u25BA";

private static final String TAHOMA_UP = "\u06F8";
private static final String TAHOMA_DOWN = "\u06F7";
private static final String TAHOMA_RIGHT = "\u003E";

我检测到要使用这一行代码的联系人。

boolean tahomaUIFont = composite.getFont().getFontData()[0].getName().equalsIgnoreCase("tahoma");