jdk1.3和jdk1.4的swing组件对中文显示解决办法

java 专栏收录该内容
7 篇文章 0 订阅

jdk1.3和jdk1.4的swing组件对中文显示一直是很让人头痛的事。

为了解决这个问题,我采用了这样的方法。

 

import java.awt.*;
import javax.swing.UIManager;

public class JOfficeUIManager extends UIManager {

   public Font _font ;
   private static String   _name;
   private static int  _style;
   private static int _size;

   public JOfficeUIManager(String name,int style,int size){
     _name = name;
     _style = style;
     _size = size;
     if(_font == null)
       _font = new Font(name,style,size);
   }

   public JOfficeUIManager(Font  font){
    _font = font;
   }

   public void setFont(){
      put("Button.font",_font);
      put("ToggleButton.font",_font);
      put("RadioButton.font",_font);
      put("CheckBox.font",_font);
      put("ColorChooser.font",_font);
      put("ToggleButton.font",_font);
      put("ComboBox.font",_font);
      put("ComboBoxItem.font",_font);
      put("InternalFrame.titleFont",_font);
      put("Label.font",_font);
      put("List.font",_font);
      put("MenuBar.font",_font);
      put("Menu.font",_font);
      put("MenuItem.font",_font);
      put("RadioButtonMenuItem.font",_font);
      put("CheckBoxMenuItem.font",_font);
      put("PopupMenu.font",_font);
      put("OptionPane.font",_font);
      put("Panel.font",_font);
      put("ProgressBar.font",_font);
      put("ScrollPane.font",_font);
      put("Viewport",_font);
      put("TabbedPane.font",_font);
      //put("Table.font",_font);
      put("TableHeader.font",_font);
      put("TextField.font",_font);
      put("PasswordFiled.font",_font);
      put("TextArea.font",_font);
      put("TextPane.font",_font);
      put("EditorPane.font",_font);
      put("TitledBorder.font",_font);
      put("ToolBar.font",_font);
      put("ToolTip.font",_font);
      put("Tree.font",_font);
   }

   public void setFont(Font font){
      put("Button.font",font);
      put("ToggleButton.font",font);
      put("RadioButton.font",font);
      put("CheckBox.font",font);
      put("ColorChooser.font",font);
      put("ToggleButton.font",font);
      put("ComboBox.font",font);
      put("ComboBoxItem.font",font);
      put("InternalFrame.titleFont",font);
      put("Label.font",font);
      put("List.font",font);
      put("MenuBar.font",font);
      put("Menu.font",font);
      put("MenuItem.font",font);
      put("RadioButtonMenuItem.font",font);
      put("CheckBoxMenuItem.font",font);
      put("PopupMenu.font",font);
      put("OptionPane.font",font);
      put("Panel.font",font);
      put("ProgressBar.font",font);
      put("ScrollPane.font",font);
      put("Viewport",font);
      put("TabbedPane.font",font);
      put("TableHeader.font",font);
      put("TextField.font",font);
      put("PasswordFiled.font",font);
      put("TextArea.font",font);
      put("TextPane.font",font);
      put("EditorPane.font",font);
      put("TitledBorder.font",font);
      put("ToolBar.font",font);
      put("ToolTip.font",font);
      put("Tree.font",font);
   }
   public Font getFont(){
     return _font;
   }

}

 

在构建其中这样做:

///

JOfficeUIManager _UIManager = new JOfficeUIManager("Simsun",0,12);

 _UIManager.setFont();

///

就可以了。

我只在中文Windows下做过测试。

在其他平台下,可能需要有宋体字库。

bootcool@163.net

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p style="color:#666666;"> <span style="font-size:14px;">本门课程重实战,将基础知识拆解到项目里,让你在项目情境里学知识。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">这样学习方式能让你保持兴趣、充满动力,时刻知道学东西能用在哪、能怎么用。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">平时不明白知识点,放在项目里去理解就恍然大悟了。</span> </p> <p style="color:#666666;"> <span></span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>一、融汇贯通</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">本视频采用了前后端分离开发模式,前端使用Vue.js+Element UI实现了Web页面呈现,后端使用Python Django框架实现了数据访问接口,前端通过Axios访问后端接口获得数据。在学习完本章节后,真正理解前后端各自承担工作。</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>二、贴近实战</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">本系列课程为练手项目实战:学生管理系统v4.0开发,项目包含了如下几个内容:项目总体介绍、基本功能演示、Vuejs初始化、Element UI使用、在Django中实现针数据增删改查接口、在Vuejs中实现前端增删改查调用、实现文件上传、实现表格分页、实现导出数据到Excel、实现通过Excel导入数据、实现针表格批量化操作等等,所有功能都通过演示完成、贴近了实战</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>三、课程亮点</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">在本案例中,最大亮点在于前后端做了分离,真正理解前后端各自承担工作。前端如何后端交互</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="color:#FF0000;font-size:14px;"><strong>适合人群:</strong></span> </p> <p style="color:#666666;"> <span style="font-size:14px;">1、有Python语言基础、web前端基础,想要深入学习Python Web框架朋友;</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">2、有Django基础,但是想学习企业级项目实战朋友;</span> </p> <p style="color:#666666;"> <span style="font-size:14px;">3、有MySQL数据库基础朋友</span> </p> <p style="color:#666666;"> <span style="font-size:14px;"> </span> </p> <p style="color:#666666;"> <span style="font-size:14px;"><img alt="" src="https://img-bss.csdnimg.cn/202009070752197496.png" /><br /> </span> </p> <p style="color:#666666;"> <span style="font-size:14px;"><br /> </span> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值