You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何更新Tkinter Canvas中create_window创建的组件位置?

Tkinter Canvas元素位置更新解决方案

要更新通过canvas.create_window()创建的元素位置,不能使用config()方法,而是需要调用Canvas的coords()方法——该方法专门用于修改Canvas上元素的坐标。

修改你的更新方法代码如下:

def update_moduleFrame(self, updatedModule, moduleFrame, moduleWindow):
    # 更新Frame的尺寸
    moduleFrame.config(width=updatedModule.size[0], height=updatedModule.size[1])
    # 更新Canvas中window元素的位置
    self.canvas.coords(moduleWindow, updatedModule.position[0], updatedModule.position[1])

关键说明:

  • canvas.create_window()返回的是一个整数类型的元素ID,Canvas上所有元素都通过这个ID进行操作
  • coords()方法的参数顺序为:目标元素ID、新的x坐标、新的y坐标

内容的提问来源于stack exchange,提问作者Tim van de Ven

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 08:50:28