小编use*_*632的帖子

为什么设置JDialog或JFrame setVisible(true)来切换我的IME设置?

我发现当我在Java swing应用程序中显示一个JDialog或一个新的时JFrame,我将在Windows 7中将我的中文输入法从半字节模式切换到全字节模式.

为什么调用对话框或框架setVisible(true)方法来切换我的IME设置?

有谁知道代码有什么问题,或者它是Java的错误?

重现问题的过程:

  1. 运行应用程序.
  2. 将您的语言更改为中文输入法之一,例如.中文(繁体) - 快速
  3. 单击程序中的按钮

我的语言设置

在此输入图像描述

我发现了一个类似的问题,通过Java中的Windows 7输入法自动切换字符宽度

并且在添加默认语言环境后,它仍然无法正常工作

import java.awt.Dimension;
import java.awt.EventQueue;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.Locale;

public class MainWindow {

private JFrame frame;
private Locale l;

/**
 * Create the application.
 */
public MainWindow() {
    initialize();
}

/**
 * Initialize the contents of the frame.
 */
private void initialize() {

    l = new Locale("zh", …
Run Code Online (Sandbox Code Playgroud)

java swing jdialog ime

19
推荐指数
2
解决办法
1027
查看次数

标签 统计

ime ×1

java ×1

jdialog ×1

swing ×1