日期:2014-05-20  浏览次数:20789 次

急急急!Textfield中的默认字体很难看!
以下是代码:
import   java.awt.*;

public   class   ChatClient   extends   Frame   {

TextField   tfTxt   =   new   TextField();
TextArea   taContent   =   new   TextArea();

public   static   void   main(String[]   args)   {
new   ChatClient().launchFrame();
}

public   void   launchFrame()   {
setLocation(400,300);
this.setSize(300,300);
add(tfTxt,   BorderLayout.SOUTH);
add(taContent,   BorderLayout.NORTH);
pack();
setVisible(true);
}
}
在别人的机器上运行的时候,在textfield和textarea中输入中英文字体都很正常,但在我的自己的机器上输入的中英文都很难看,字体有点扭曲的感觉,不清晰。不知道是什么原因?请各位帮忙了!


------解决方案--------------------
我一般在main方法中将所有的默认字体全部设置成宋体就比较好看了

Set <Object> keys = new HashSet <Object> ();
UIDefaults uiDefaults = UIManager.getDefaults();
Enumeration enumeration = uiDefaults.keys();
while (enumeration.hasMoreElements()) {
Object key = enumeration.nextElement();
Object val = uiDefaults.get(key);

// 如果是字体对象,则打印;直接打印将列出所有的属性
if (val instanceof Font) {
keys.add(key);
}
}
Font defaultFont = new Font( "宋体 ", Font.PLAIN, 12);
for (Object key : keys)
uiDefaults.put(key, defaultFont);

------解决方案--------------------
我只想要默认字体啊,奇怪的是在别人机器上字体是正常的,我自己的机器上就很难看啊
------解决方案--------------------
每台机器上面声明的默认字体并非一样的,与JDK的版本有关系

所以我宁愿自已重置一次
------解决方案--------------------
~HOHO
学习
------解决方案--------------------
学习
------解决方案--------------------
别人机器上jdk版本跟我一样的,但显示出来不一样,我估计字体还是默认的那个,只是显示出来是被扭曲后的样子,很奇怪,希望高手出来解答!
------解决方案--------------------
MARK 学习
建议楼主还是自己设置下字体,不要用默认的
------解决方案--------------------
这里好像不能贴图片,不然给你们看截图就很清楚了!
我的qq是741311,能帮我的加我qq