Java问题我现在用Robot对象写了一个鼠标能自己移动,点击,键盘能自动输入的东西。。但是他是显

Java问题我现在用Robot对象写了一个鼠标能自己移动,点击,键盘能自动输入的东西。。但是他是显我现在用Robot对象写了一个鼠标能自己移动,点击,键盘能自动输入的东西。。但是他是显式的,就是说鼠标移动点击打开了什么东西,他也会显示在屏幕上,跟人为操作没什么两样。。。。我现在就想问一下,有没有能让他隐式完成这些动作,就是他内部完成,不需要显式在屏幕上。比如我要让他自动移动到浏览器位置,并且打开他,但浏览器可以不显示出来,,,对浏览器的任何操作都可以不显示出来的那种。。。请教各位大神,Java有这样的对象吗?

    一: 使用Java自带的Robot实现对鼠标和键盘的控制, 都是前台的,显示的.

    二: 使用Java的 JNI/JNA技术,可以实现后台模拟操作. 不会真实的移动鼠标,点击等..

    三: JNI和JNA 里面涉及一些C语言的知识, 就是利用Java去调用windows API

    比如,找到浏览器的窗口句柄HWND ,发送消息PostMessage ,去实现键鼠的操作

拓展延伸

大漠插件(dm.dll),还不错.封装了很多常用的方法,比如找颜色,找图片,文字识别,键盘操作,鼠标操作等. 免费版基本够使用了.推荐 使用C#来调用dm.dll    

注意: 不推荐java调用大漠插件,因为有少数的函数,java调用不起作用...

追问

JNI不是用来和起来语言交互的吗?就是c的代码可以在Java运行。跟这个技术。。。。有啥关联啊?

追答

c语言可以方便的调用windows API 完成后台级别的键鼠操作。

如果从jni入手,你可能需要熟悉下c语言。

java本身很难完成这些操作的。

追问

windowsAPI里有有这个方法吗?

还有那个c++可以调用windosapi吗?

追答

有的,你详细了解下吧。JNA进行了简化。你可以仔细了解下。没有时间仔细研究的话,就用c#调用dm.dll

追问

我现在想具体看看那个方法,您能告诉我那个方法名吗?

追答

早就说了啊。PostMessage啊。这一个函数的用法起码要好几千字去解释。太多功能,太强大了。去msdn上查PostMessage和SendMessage。

追问

谢谢咯,我还得继续学c++

温馨提示:答案为网友推荐,仅供参考
相似回答