在python中模拟按钮单击

时间:2015-04-21 06:11:03

标签: python-2.7 wxpython buttonclick simulate

我目前正在开发一个python项目,它是一个不与internet交互的应用程序.GUI正在用wxpython进行用餐。 python中是否有代码可以模拟按钮点击。

1 个答案:

答案 0 :(得分:5)

我取决于你真正需要它做什么。您是否只是想要执行与用户单击按钮时相同的代码?或者您是否需要在本机UI按钮上发生真正的系统级鼠标事件,就好像有真正的用户这样做?

对于前者,您只需要从您需要的任何地方调用事件处理函数。您可以创建匹配的事件对象并按照建议使用wx.PostEvent,或者直接调用事件处理程序方法。或者为了更好的编程风格,重构并将事件处理程序的内容移动到一个单独的函数,并从事件处理程序调用它,以及模拟单击按钮的效果所需的任何其他位置。

为了将真实的系统级事件发送到本机窗口小部件,有wx.UIActionSimulator类,可用于在比发布wx事件更低的级别模拟鼠标或键盘,因此UI的行为恰好与就好像有一个真正的用户这样做。我猜这95%的时间对于你所描述的情况而言是过度杀戮,而且比上面的情况更复杂,但是如果你确实需要的话,那就是它。