我正在开展一个代表友谊网络的项目。我用椭圆代表朋友,用线代表他们的友谊。
我已经查找了如何绑定事件,到目前为止我理解如何绑定事件:
def line(self, event):
x1, y1 = (event.x - 1), (event.y - 1)
x2, y2 = (event.x + 1), (event.y + 1)
self.display_canvas.create_line(x1, y1, x2, y2, fill="black")
但是它只绘制一条像素线并跟随鼠标的轨迹。
我想要做的是创建一条直线,它也跟在鼠标之后,直到它在椭圆形上停止,并且只有在椭圆形上开始时。
它看起来像这样(它完全相同,除非我无法拖动):!http://s17.postimg.org/lhveezdi7/line.png
谢谢。
答案 0 :(得分:0)
在<B1>
事件中,请记住x / y坐标。在<B1-Motion>
上,从记住的坐标到事件的坐标绘制一条线。在任何时间点,您都可以使用画布的find_*
功能检查坐标是否在椭圆上方或附近。