tkinter Canvas 实现拖曳与缩放功能

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tkinter Canvas 实现拖曳与缩放功能相关的知识,希望对你有一定的参考价值。

参考技术A

tkinter 内建了 拖曳功能 :使用 scan_mark(x0, y0) 记住当前坐标 ,接着使用 scan_dragto(x1, y1, gain=10) 将 view of the canvas 拖曳到 位置。

下面的例子参考 stackoverflow 的 Move a tkinter canvas with Mouse :

效果:

该例子实现了使用鼠标左键记录 ,鼠标移动时,触发拖曳功能,拖曳整个 canvas。

参考 Move and zoom a tkinter canvas with mouse

需要注意:鼠标事件报告的是“屏幕坐标”(\'screen coordinates\')。当您使用滚动画布时,通常需要将这些坐标转换为“画布(即,滚动区域)坐标”。

DragZoom 实现了拖曳与缩放功能。

以上是关于tkinter Canvas 实现拖曳与缩放功能的主要内容,如果未能解决你的问题,请参考以下文章

Python tkinter canvas实现图片裁剪

tkinter使用canvas实现渐变色

tkinter使用canvas实现渐变色

matplotlib 在 tkinter 画布中的缩放功能

canvas离屏技术与放大镜实现

html5 拖曳功能的实现[转]