如何通过命令行填写gui应用程序中的文本框?

时间:2011-03-24 11:17:49

标签: python windows perl console ui-automation

我正在python中设计一个 NLP (自然语言处理)应用程序,我想使用以下 UNL (通用网络语言)EnConverter,这是一个可执行的gui - 第三方 - 应用程序,仅适用于Windows(我没有源代码):


所以,我想知道的是如何编程调用此EnConverter的控制台应用程序并按“设置”按钮,然后管理以填充下图中的文本框:

当我点击“设置”按钮时,会显示上一个窗口...我希望我的应用程序填充这些文本框,然后按“确定” ... 按“确定”按钮时,应用程序返回第一个窗口... 应用程序(我的应用程序)要做的最后一件事就是在第一个窗口中单击“ EnConvert ”按钮...请查看第一张图片。

我知道这是可能的,因为我的教授在 Perl 中完成了这项工作......他拒绝告诉我怎么做!我研究过互联网,但我一无所获!

3 个答案:

答案 0 :(得分:4)

您可以使用Win32::GuiTest。它可以检测小部件,单击按钮,将文本写入GUI等。

答案 1 :(得分:3)

您可以使用PyWinAuto。它可以检测小部件,单击按钮,将文本写入GUI等。

答案 2 :(得分:1)

Windows Sendkey包看起来应该是理想的这种东西。

从页面:

在此示例中,SendKeys用于键入“Hello World!”在记事本中。

import SendKeys
SendKeys.SendKeys("""
    {LWIN}
    {PAUSE .25}
    r
    Notepad.exe{ENTER}
    {PAUSE 1}
    Hello{SPACE}World!
    {PAUSE 1}
    %{F4}
    n
""")