解决java中输入中文时出现多余的小窗口问题

刚刚碰到这问题,百度了下,顺便记录下………………………………

/*
* 以下方法用于解决java中输入法出现多余的输入窗口问题

* 方法1  在命令行中加入参数
* java -Djava.awt.im.style=no-spot 这样不需要改程序,是个比较完善的解决方法。

* 方法2  直接设置系统参数
* System.setProperty( "java.awt.im.style", "no-spot" );

* 方法3通过反射修改类的static 字段
* try {
* Class iClass = Class.forName("sun.awt.im.InputMethodContext");
*
* Field field = iClass.getDeclaredField("belowTheSpotInputRequested");
* AccessibleObject.setAccessible(new AccessibleObject[] { field }, true);
*         field.setBoolean(null, false);
* } catch (SecurityException e) {
* e.printStackTrace();
* } catch (NoSuchFieldException e) {
* e.printStackTrace();
* } catch (ClassNotFoundException e) {
* e.printStackTrace();
* } catch (IllegalArgumentException e) {
* e.printStackTrace();
* } catch (IllegalAccessException e) {
* e.printStackTrace();
* }

*/

posted @ 2013-05-30 00:21  HackerD  阅读(324)  评论(0编辑  收藏  举报