1

我正在尝试为我的一个 wxPython 类编写一个 PyUnit 单元测试,该类接收鼠标滚轮事件。单元测试产生一个鼠标事件

event = wx.MouseEvent(mouseType=wx.wxEVT_MOUSEWHEEL)

不幸的是,它产生了一个鼠标滚轮事件WheelRotation = 0。该类MouseEvent阻止我手动设置非零车轮旋转,这反过来又阻止我测试我的事件处理程序的非平凡案例。

有没有办法综合生成具有非零旋转的鼠标滚轮事件(可用于单元测试)?

4

1 回答 1

0

不是 100% 确定这是一种有效的方法,但是:

>>> import wx
>>> event = wx.MouseEvent(mouseType=wx.wxEVT_MOUSEWHEEL)
>>> event.WheelRotation = 22
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: can't set attribute
>>> event.m_wheelRotation = 22
>>> event.WheelRotation
22                                                                             
>>> event.m_wheelRotation = 25
>>> event.WheelRotation                                                 
25                                                                             
>>> 
于 2013-08-11T20:44:14.457 回答