[Tkinter-discuss] tkinter and cursor
John McMonagle
jmcmonagle at velseis.com
Fri Sep 2 07:48:56 CEST 2011
On 02/09/11 13:59, ÊØÖê´ýÍÃ wrote:
>
> you can get a figure with the program, when you move mouse on the canvas (figure),you can see the coordinate on the right corner , i want to make it in tkinter,there is no "move click in the canvas" event in tkinter,how to make it in tkinter??
>
You can use the "<Motion>" event. You also should be converting the
event.x and event.y to canvas coordinates. This is especially important
when your canvas also includes scrollbars.
So, using your code from previous posts, from the myprint function onwards,
def myprint(event):
# convert the event coordinates to canvas coordinates
x = canvas.canvasx(event.x)
y = canvas.canvasy(event.y)
# find the poistion in the top right corner of your canvas widget
# less a little bit so as to see the displayed text
cx = canvas.winfo_width() - 10
cy = 10
# delete previous displayed text
canvas.delete('coords')
# display the coordinates
canvas.create_text(cx,cy,anchor=E, text='%d,%d' % (x,y), tags='coords')
canvas.bind("<Motion>", myprint)
root.mainloop()
This will display the canvas coordinate in the top right corner of the
canvas widget.
Suggested reading on Canvas:
http://effbot.org/tkinterbook/canvas.htm
Suggested reading on events:
http://effbot.org/tkinterbook/tkinter-events-and-bindings.htm
Regarsd,
John
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
More information about the Tkinter-discuss
mailing list