Tk mouse wheel events?
Fredrik Lundh
fredrik at pythonware.com
Thu Aug 15 13:20:17 EDT 2002
Edward K. Ream wrote:
> I am trying to get a binding to fire when the mouse wheel moves. Vertical
> scrolling is handled automatically by the Tk.Text widget, and I would like
> to scroll a canvas. The canvas is in a toplevel that includes Text widgets.
>
> From a Google search it appears that Button-4 and Button-5 events might do
> the job. I don't see this documented on the Tk man pages though.
>
> The following doesn't seem ever to call the event handlers, no matter what
> kind of widget is used:
>
> widget.bind("<Button-4>",self.OnButton4)
> widget.bind("<Button-5>",self.OnButton5)
>
> Does anyone have any advice or example code? Thanks!
from Tkinter import *
def roll(event):
print event.delta
frame = Frame(width=200, height=200)
frame.pack()
frame.focus_set() # wheel events goes to focussed window
frame.bind("<MouseWheel>", roll)
mainloop()
</F>
More information about the Python-list
mailing list