【发布时间】:2015-09-09 14:21:13
【问题描述】:
我是 autoit 的新手,正在尝试将其与 java 应用程序集成。我不能让它发送 enter 或 tab 或 ctrl,它只发送纯文本。
代码是这样的:
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
String jacobDllVersionToUse;
if (jvmBitVersion().contains("32")){
jacobDllVersionToUse = "jacob-1.18-M2-x86.dll";
}
else {
jacobDllVersionToUse = "jacob-1.18-M2-x64.dll";
}
try{
File file = new File("lib", jacobDllVersionToUse);
System.setProperty(LibraryLoader.JACOB_DLL_PATH, file.getAbsolutePath());
AutoItX x = new AutoItX();
x.run("Skype", "C:/Program Files (x86)/Skype/Phone", AutoItX.SW_SHOW);
x.winActivate("Skype");
x.winWaitActive("Skype");
x.sleep(2000);
x.send("{TAB}!n" );
}catch(Exception e){
}
}
我已经试过了:
x.controlSend("Window Title","text","","{ENTER}",false);x.send("{TAB}!n" );x.send("{TAB}n" );
【问题讨论】:
-
您的 AutoIt 代码在哪里?一个小的功能方法会很好。
"AutoItX"是什么? -
啊,您使用的是 AutoItX4Java,不是吗?附带说明一下,您必须注意在后台线程中运行所有 AutoIt 代码,否则它可能会冻结您的 Swing GUI。
-
另外,这段代码的总体目标是什么?如果您希望将文本推送到 Swing 文本组件中,那么可能有更好的方法来做到这一点。
-
是的,我使用 AutoItX4Java,我知道冻结的问题,我正在努力解决这个问题,但现在我必须修复 autoit 脚本,你的建议
-
目标是在 Skype 上自动登录,只按一个按钮这是应用程序的一部分,用于在某些网站和某些应用程序上自动登录,它必须发送诸如 ENTER、TAB、ALT 之类的信息
标签: java automation autoit jacob