【发布时间】:2012-01-02 23:57:27
【问题描述】:
我正在 Jython 中创建一个应用程序,我尝试在 JLabel 上捕获鼠标事件。我有一个包含 JLabel 的 JFrame,但是当我尝试向它添加鼠标侦听器时,我得到:
TypeError: write only attribute
主窗口:
class Commander(JFrame):
...
self.image = ImageIcon()
self.label = JLabel(self.image)
self.mouseListener = ScreenMouseListener()
self.label.addMouseListener(self.mouseListener) <- This line causes the TypeError
...
鼠标监听器扩展了 MouseAdapter:
class ScreenMouseListener(MouseAdapter):
def mousePressed(self, event):
print "Mouse pressed"
搜索错误将我带到PyBeanEvent,但我不明白为什么会发生这种情况。哪个属性是只写的?
编辑:删除导致错误的行后,我注意到 mousePressed 函数被调用了! “mouseListener”可能是 JFrame 的一个属性吗?
【问题讨论】:
标签: swing mouseevent awt jython