繁体   English   中英

在Java中检测Windows应用程序的文本字段

[英]detect text field of an windows application in java

在Windows OS中运行的带有触摸监视器的计算机。 我需要编写一个Java代码来检测用户何时在文本字段中进行触摸,然后显示Windows屏幕键盘,并在非文本字段时隐藏屏幕键盘。

我已经完成了使用以下命令显示屏幕键盘的工作:

Runtime.getRuntime().exec("cmd /c C:\\Windows\\System32\\osk.exe");

但是我如何检测(不是用Java编写的另一个应用程序的)文本字段?

您不能这样做,但是如果使用java.awt.Robot ...,则允许用户在另一个应用程序中的文本字段周围绘制一个框以获取其坐标,然后在程序中记住它。 或者,如果坐标始终在同一位置,则可以对它们进行硬编码。

知道坐标后,您就可以收听鼠标的输入,因此,在触发mousePressed事件时,如果坐标在文本框中,请触发您的方法以显示屏幕键盘。

这可能不起作用,因为用户必须具有特权并允许您的应用读取本机鼠标输入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM