4

当我单击部署在 Windows 8 平板电脑中的基于 Java Swing 的应用程序中的文本字段时,屏幕键盘不会自动打开。我需要实现一些东西才能启用它吗?

或者,是否有任何设置要明确完成以实现这种情况?

4

1 回答 1

0

首先,输入插入符号是否出现在文本字段中?如果是这样,您可以尝试执行 java.awt.Component.requestFocus() 或 java.awt.Component.requestFocusInWindow()。如果两者都失败,则怀疑您的 JVM 和/或机器有问题。

必须启用特定组件且可聚焦(所有父组件也是如此)才能使文本字段聚焦。尽管默认的 Java 属性是让新组件既可聚焦又可启用,但您可以通过执行 setEnabled(true); 来强制它们。和 setFocusable(true); 在您的组件上。焦点通常由闪烁的插入符号表示。

还要确保您没有任何正在消耗鼠标事件的奇怪鼠标侦听器。

如果一切都失败了,在你的组件上添加一个鼠标侦听器和一个焦点侦听器以测试它是否接收焦点并尝试不同的方式来选择它(通过 tab 键,通过鼠标单击,通过触摸输入)。

Java 是平台无关的。假设您使用 AWT/Swing 对象,无论是在 windows 8 还是 windows 98 上(如果此版本的 java 支持),JVM 都应自动处理底层机制。

于 2013-08-01T19:38:14.783 回答