下面的代码有点麻烦--不管我尝试了什么,当我使用一个标签元组时,和弦函数都会返回一个空列表。
def drop_line(self, event):
"""
Function to call when the mouse is released. Creates a permanent bond between people.
"""
self.delete_temporary()
person = self.canvas.find_enclosed(event.x - self.people_size_var.get(),
event.y - self.people_size_var.get(),
event.x + self.people_size_var.get(),
event.y + self.people_size_var.get())
# Writing friendships to dictionary.
try:
Link.person_name = self.canvas.gettags(person)
Link.friends_dictionary[Link.person_name[0]] = (Link.friend_name[0] + "," +
Link.friends_dictionary[Link.person_name[0]])
Link.friends_dictionary[Link.friend_name[0]] = (Link.person_name[0] + "," +
Link.friends_dictionary[Link.friend_name[0]])
line = self.canvas.create_line(self.pos_x, self.pos_y, event.x, event.y, activefill="red", smooth=True,
fill="black",width=self.edge_width_var.get(),
tags=("permanent", Link.person_name[0], Link.friend_name[0]))
# My problem is here :( Can't get the last 2 prints to work
print(self.canvas.gettags(line))
print(("permanent", Link.person_name[0], Link.friend_name[0]))
print(self.canvas.coords(("permanent", Link.person_name[0], Link.friend_name[0])))
print(self.canvas.coords(self.canvas.gettags(line)))任何帮助都是非常感谢的,甚至是想法或链接!
谢谢。
发布于 2015-03-05 13:57:12
是什么使您认为可以将一组标记传递给canvas.coords?
当您可以在effbot.org、新墨西哥科技网站和传统知识手册上阅读时,您可以传递一个id或标记。然后,它将返回第一个匹配项的坐标,或者您可以将新的坐标传递给它。
标记主要用于将对象组合在同一个标记下。事实上,您的行有多个标记,这意味着可以使用这些标记中的任何一个找到它。我不知道有什么方法可以搜索标签组合。如果您想要找到一个特定的对象,给它一个唯一的标签或使用它的id。
https://stackoverflow.com/questions/28879065
复制相似问题