2016年12月30日 13:32:08751人阅读 评论(0) 收藏 举报
 
用java开发一个带有托盘图标的程序, 
其它模块的中文显示都是正常的,比如: 
 
就只有托盘中点击小图标时弹出的菜单中的中文是方框(中文方块),如下: 

按照一般的经验,以为是字体没设置好,就用以下代码设置字体:

  1. Font f = new Font("\u5fae\u8f6f\u96c5\u9ed1", Font.PLAIN, 11);//宋体
  2. UIManager.put("Label.font",f);
  3. UIManager.put("Label.foreground",Color.black);
  4. UIManager.put("Button.font",f);
  5. UIManager.put("Menu.font",f);
  6. UIManager.put("MenuItem.font",f);
  7. UIManager.put("List.font",f);
  8. UIManager.put("CheckBox.font",f);
  9. UIManager.put("RadioButton.font",f);
  10. UIManager.put("ComboBox.font",f);
  11. UIManager.put("TextArea.font",f);
  12. UIManager.put("EditorPane.font",f);
  13. UIManager.put("ScrollPane.font",f);
  14. UIManager.put("ToolTip.font",f);
  15. UIManager.put("TextField.font",f);
  16. UIManager.put("TableHeader.font",f);
  17. UIManager.put("Table.font",f);

完了中文还是方块,那就用以下代码打印字体:

  1. GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
  2. String script[] = ge.getAvailableFontFamilyNames();
  3. for(String s:script){
  4. System.out.print(s+",");
  5. }

发现明明写着有宋体。这下郁闷了,试了一下午,还是没有搞定。 
终于在网上找到了救星(参考:http://scnjl.iteye.com/blog/1282172)。 
原来是myeclipse的运行参数问题,真想骂人啊我。。。 
下面说说解决: 
第一: 
在你的具有main函数的类也即你应用运行的主类上点击右键,选择Run As中的Run Configurations,如下图:


第二,在Arguments标签下的VM arguments中添加下面这行参数代码,然后点击应用。 
      
      -Dfile.encoding=GB18030


在次运行

 

java 菜单 中文 乱码问题解决方案(使用idea/eclipse) swing MenuItem乱码的更多相关文章

  1. java swing MenuItem乱码处理

    用java开发一个带有托盘图标的程序, 其它模块的中文显示都是正常的,就只有托盘中点击小图标时弹出的菜单中的中文是方框(中文方块) 解决: 1: 在你的具有main函数的类也即你应用运行的主类上点击右 ...

  2. Linux 下报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must解决方案

    一.报错环境:在Linux mint下,前几天还用得很好的的eclipse,今天开机不知为什么这样. Linux 下报错:A Java RunTime Environment (JRE) or Jav ...

  3. JAVA的中文字符乱码问题

    来源:http://luzefengoo.blog.163.com/blog/static/1403593882012754428536/ JAVA的中文字符乱码问题一直很让人头疼.特别是在WEB应用 ...

  4. [转]URL传中文参数导致乱码的解决方案之encodeURI

    通过URL传中文参数时,在服务端后台获取到的值往往会出现乱码.解决方案有很多种.本文介绍如何通过encodeURI来解决中文乱码问题. 首先,在前端页面准备参数的时候,需要对中文参数进行encode处 ...

  5. 【应用服务 App Service】App Service 中部署Java应用中文乱码现象

    问题情形 有时候部署在 Azure  App Service的 Java应用会出现乱码 详细日志 无 问题原因 因为 App Service默认的编码为gbk,所以在显示页面或传递中文字符时就会出现乱 ...

  6. java ee 中文乱码的问题

    java ee 中文乱码的问题 发生中文乱码的三种情况 (一) 表单form Post 方法 直接在服务器中设置 request.setCharacterEncoding("utf-8&qu ...

  7. Git跨平台中文乱码临时解决方案

    Git 是一个非常优秀的分布式版本控制系统,最初为Linux Kernel版本管理进行量身定做.优点是,和其他版本控制系统相比,稳定,速度快,跨平台,易学易用,无需要花费成本.更多优点请点击阅读:ht ...

  8. AndroidStudio开发Java工程(解决java控制台中文打印乱码+导入jar包运行工程)

    这篇分享一点个人AS开发java工程经验,虽然有时候还是得打开eclipse来运行java项目,但能用AS的时候还是尽量用AS,毕竟一个字,爽~ 废话不多说,进入正题. 一.开发Java工程 你有两种 ...

  9. java 乱码问题解决方案

    java  乱码问题解决方案 一.tomcat: <Connector         port="8080"         maxThreads="150&qu ...

随机推荐

  1. epoll_wait惊群问题

    项目接入层用的模型是,主线程创建listenfd,传入6个子线程,每个子线程一个事件循环,epoll_wait这个listenfd. 如果是listenfd,则epoll_wait返回调用accept ...

  2. Excel导入CSV文件中文乱码

    参考: iconv -f UTF8 -t GB18030 a.csv >b.csv 或iconv -f UTF-8 -t GB18030 a.csv >b.csv

  3. 百练1678-整数的个数-2015正式A题

    A:整数的个数 总时间限制:  1000ms 内存限制:  65536kB 描述 给定k(1< k < 100)个正整数,其中每个数都是大于等于1,小于等于10的数.写程序计算给定的k个正 ...

  4. 【Java】身份证号码验证

    代码引用自:https://gitee.com/appleat/codes/ynrtqujv0wfgesm8ia9b547 package xxx; /** * Created by wdj on 2 ...

  5. JS中数据类型的判断

    typeof 使用 : var n = "hello"; console.log(typeof n); console.log(typeof(n));

  6. 数据库设计画图工具powerdesigner

    powerdesigner 教程:http://jingyan.baidu.com/article/bea41d43684fa4b4c51be6cf.html

  7. grep 的学习 正则

    grep 命令: grep  "name"   /path/file_name    从file_name文件中中查找 name 字符 grep  -c    "name ...

  8. BFS模板

    bool visit[maxn];///访问标记 ,,,,-,,-,}; ///向左上右下,左下,右上,右下,左上 ,,,-,-,,,-}; struct node { int r; int c; i ...

  9. Python算法——递归思想

    编程语言在构建程序时的基本操作有:内置数据类型操作.选择.循环.函数调用等,递归实际属于函数调用的一种特殊情况(函数调用自身),其数学基础是数学归纳法.递归在计算机程序设计中非常重要,是许多高级算法实 ...

  10. 实验吧—Web——WP之 因缺思汀的绕过

    首先打开解题链接查看源码: 查看源码后发现有一段注释: <!--source: source.txt-->这点的意思是:原来的程序员在写网页时给自己的一个提醒是源码在这个地方,我们要查看时 ...