Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Swing应用程序-Window 8平板电脑-屏幕键盘_Java_Swing_Keyboard - Fatal编程技术网

Java Swing应用程序-Window 8平板电脑-屏幕键盘

Java Swing应用程序-Window 8平板电脑-屏幕键盘,java,swing,keyboard,Java,Swing,Keyboard,当我在Windows8平板电脑中部署的基于Java Swing的应用程序中单击文本字段时,屏幕上的键盘不会自动打开。为了实现这一点,我需要实现什么吗 或者,是否需要明确进行任何设置以实现这种情况?首先,输入插入符号是否显示在文本字段中?如果是这样,您可以尝试执行java.awt.Component.requestFocus()或java.awt.Component.requestFocusInWindow()。如果两者都失败,请怀疑JVM和/或计算机有问题 对于要聚焦的文本字段,必须启用特定组件

当我在Windows8平板电脑中部署的基于Java Swing的应用程序中单击文本字段时,屏幕上的键盘不会自动打开。为了实现这一点,我需要实现什么吗


或者,是否需要明确进行任何设置以实现这种情况?

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

对于要聚焦的文本字段,必须启用特定组件并使其可聚焦(所有父组件也是如此)。虽然默认的java属性将有新的组件可以聚焦和启用,但您可以通过执行setEnabled(true)来强制它们;和可设置焦点(真);在您的组件上。焦点通常由闪烁的插入符号表示

还要确保没有任何奇怪的鼠标侦听器正在使用鼠标事件

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


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

是,输入插入符号正在闪烁。专注不是我的问题。关于Win8平板电脑屏幕键盘的加载。我在windows8平板电脑上尝试了一个简单的JtextField示例,甚至没有加载屏幕键盘。我所做的是,我为一个Jtextfield编写了一个HelloWorld类的应用程序,运行该应用程序。它以单个文本字段打开,焦点已经在该字段上(闪烁插入符号)。通过触摸,我手动使其失去焦点,然后再次点击文本字段。理想情况下,由于它是一个文本字段,屏幕上的键盘应该弹出。但是这种情况不会发生。@ViswanathT如果可能的话,请在另一台机器上(也有windows 8和触摸屏)尝试您的应用程序。即使是像JTextField这样的简单应用程序也不起作用。可能是JVM搞砸了。。。需要一个数字,如果它只是你的机器或每赢8触摸屏。确保java已更新到最新版本,并尝试重新安装(防止错误安装的预防措施)。