closest = self.canvas.find_closest(event.x, event.y)[0] overlapping = self.canvas.find_overlapping(event.x, event.y, event.x+1, event.y+1)ifclosestinoverlappingandclosestinself.itemsandself.items[closest]isnotNone: text.append(self.items[closest].clicked(self, event, closest)) self.text ...
Canvas中的对象可以是各种图形元素,每个元素都有一个唯一的标识符,可以通过该标识符对元素进行操作或获取属性。 要从事件中提取对象id,可以使用Canvas的find_closest方法或find_overlapping方法。这些方法接收事件发生的坐标作为参数,并返回与该坐标最接近或重叠的对象的标识符。 示例代码如下: import tkinter as tk...
item 可以是单个画布对象的 ID,也可以是某个 tag。 find_closest(x, y, halo=None, start=None) 返回一个元组,包含所有靠近点(x, y)的画布对象的ID。如果没有符合的画布对象,则返回一个空元组。可选参数 halo 用于增加点(x, y)的辐射范围。可选参数 start 指定一个画布对象,该方法仅返回在显示列表中低...
第92行、第97行代码调用 Canvas 的 scale() 方法缩放椭圆。第116行代码调用 Canvas 的find_closest()方法获取与指定点最接近的图形项;第155行代码调用 Canvas 的find_enclosed() 方法获取指定矩形区域内的图形项;第170行代码调用 Canvas 的 delete() 方法删除图形项。 4、为图形项绑定事件 Canvas 的 tag_bind(...
find_below(self, tagOrId):返回 tagOrId 对应图形项的下一个图形项。 find_closest(self, x, y):返回和 x 、y 点最接近的图形项。 find_enclosed(self, x1, y1, x2, y2):返回位于指定矩形区域内最上面的图形项。 find_overlapping(self, x1, y1, x2, y2):返回与指定矩形区域重叠的最上面的图形...
.find_closest(x,y,halo=None,start=None) 1. 返回一个包含最接近点 (x, y) 的对象的对象 ID 的单例元组。 如果没有符合条件的对象,则返回一个空元组。 使用halo 参数来增加点的有效大小。 例如,halo=5 将 (x, y) 的 5 个像素内的任何对象视为重叠。
export function findClosestId(arr, value) { let minDiff = Math.abs(arr[0] - value); let closestId = 0; for (let i = 1; i < arr.length; i++) { let diff = Math.abs(arr[i] - value); if (diff < minDiff) { minDiff = diff; closestId = i; } } return { id: closest...
y=canvas.canvasy(event.y)printcanvas.find_closest(x, y) 画布对象显示的顺序 Canvas 组件中创建的画布对象都会被列入显示列表中,越接近背景的画布对象位于显示列表的越下方。显示列表决定当两个画布对象重叠的时候是如何覆盖的(默认情况下新创建的会覆盖旧的画布对象的重叠部分,即位于显示列表上方的画布对象将覆盖...
print canvas.find_closest(x, y) 画布对象显示的顺序 Canvas 组件中创建的画布对象都会被列入显示列表中,越接近背景的画布对象位于显示列表的越下方。显示列表决定当两个画布对象重叠的时候是如何覆盖的(默认情况下新创建的会覆盖旧的画布对象的重叠部分,即位于显示列表上方的画布对象将覆盖下方那个)。当然,显示列表...
此外,我试图将窗口坐标传递给find_closest方法,该方法如中所述,接受画布坐标,并且没有出现错误。:", event.x) print("Window y-coordinate:" 浏览2提问于2020-11-21得票数 2 回答已采纳 1回答 错误的像素坐标 我使用下面的代码来获取鼠标位置的像素坐标。private void canvas_MouseMove(object sender, ...