-1
私はTkinterキャンバス上に異なる図形を配置しようとしますが、それぞれの図形にタグを付けてアクションをバインドします。Tkinter - canvas figure:異なるタグを複数のFigureにバインドできないのですか?
例:私はキャンバスに4点を置いて、座標で構成されたタグを付け、彼のタグで識別されるクリックした点の座標を表示するアクションを定義します。
タグを印刷しても影響はありませんが、大丈夫なタグは違いますが、座標が表示されているときは常に最後に追加されたポイントです。すべてのタグが最後に同じであったようです。トンを理解する:/
from Tkinter import *
points=[(10,10),(60,10),(10,60),(60,60)]
def check(pixel):
print('===========')
print('you clicked on:')
print(pixel)
root = Tk()
canvas = Canvas(root, width=70, height=70)
print('----points list----')
for p in points:
tag="("+str(p[0])+","+str(p[1])+")"
print(tag)
canvas.create_oval(p[0]-2,p[1]-2,p[0]+2,p[1]+2,tags=tag)
canvas.tag_bind(tag, '<ButtonPress-1>', lambda event:check(tag))
canvas.pack()
root.mainloop()
を可能な出力:(私は3と異なる点をクリック)
----points list----
(10,10)
(60,10)
(10,60)
(60,60)
===========
you clicked on:
(60,60)
===========
you clicked on:
(60,60)
===========
you clicked on:
(60,60)
任意のアイデア?