【发布时间】:2013-08-08 07:39:12
【问题描述】:
使用此代码 sn-p,我通过来自 Java Swings 的焦点获得事件启动屏幕键盘进程。
String sysroot = System.getenv("SystemRoot");
Process proc = Runtime.getRuntime().exec("cmd /c " + sysroot + "/system32/osk.exe");
当失去焦点时,键盘应该关闭。我使用proc.destroy() 来实现它。
此实现在 Windows 8 平板电脑中表现异常。它在焦点上打开键盘,而不是在失去焦点时关闭。我正在从 Eclipse 运行程序。
相同的实现在 Windows 7 桌面上完美运行。唯一的变化是,我没有在Windows 7中指定cmd /c。对于Win 8,如果我不给cmd /c,它甚至不会打开键盘。
请提出解决方案。
【问题讨论】:
标签: java