如何处理我自己的java程序中的任何GUI程序?

时间:2013-09-03 11:56:05

标签: java

这个问题可能已被问过几次,但我没有找到任何可靠的答案。我想编写一个程序来运行谷歌浏览器并在搜索框中写一些内容并搜索然后点击最相似的单词链接。或者打开微软办公室字和输入内容并改变大小等的程序。或者打开计算器并执行一些操作并带回结果的程序。我从命令行做了很多事情,比如连接到Oracle DB以及导入和导出数据库。我知道JDBC就像一个界面。是否有任何技术(使用java或任何其他语言)可以从GUI的角度管理另一个程序?

3 个答案:

答案 0 :(得分:1)

  1. 您可以使用C#for Windows
  2. 编写一个
  3. 您可以使用spy++(它应该安装或者它随视觉工作室一起......不确定这个)来查看您正在搜索的组件(它就像是用于Windows的firebug)
  4. 您可以使用user32.dll查找窗口并发送消息(用户点击,用户按下等)
  5. 但如果您想复制网页或在其中搜索..您应该提出要求谷歌并将回复作为文字阅读......

答案 1 :(得分:0)

对于网络浏览器,您可以使用selenium 不确定其他事情。

答案 2 :(得分:0)

我会使用JNA并调用您的操作系统API。

我是Windows的情况,您可以查看FindWindowFindWindowExFindWindowByCaption来查找所需的元素。 然后,使用sendMessage来模拟窗口事件,例如键类型,鼠标单击......

Here是C#中的一个示例,显示了如何在C#中按名称关闭窗口。使用JPA将其翻译成Java应该不会太难。 (还可以查看wikipedia页面)