【问题标题】:Tkinter: Cannot scroll frame inside CanvasTkinter:无法在画布内滚动框架
【发布时间】:2021-09-28 12:13:31
【问题描述】:

我在 Canvas 内有一个带有滚动条的框架。我想在该框架内滚动(即使用鼠标中键)。

This answer to another stackoverflow question 应该包含工作代码,但它不是。

我怎样才能让这个例子工作?

【问题讨论】:

  • 你想用鼠标滚动来滚动框架

标签: python tkinter canvas


【解决方案1】:

根据我的理解 我想在该框架内滚动(即使用鼠标的中键)。您想使用鼠标滚轮向右滚动框架吗?

您可以使用<MouseWheel> 虚拟事件来滚动画布并最终滚动框架。

<canvas>.create_window((0,0),window=<frame>,anchor='nw')
def _on_mousewheel(event):
    <canvas>.yview_scroll(-1*int(event.delta/120), "units")   
<canvas>.bind_all("<MouseWheel>", _on_mousewheel)

【讨论】:

  • 我也有一个可滚动的列表框,我不需要为它设置任何事件并且鼠标滚轮可以工作。链接中的代码不应该按原样工作吗?我在想onFrameConfigure 会让鼠标滚轮滚动框架。
猜你喜欢
  • 1970-01-01
  • 2020-10-30
  • 2015-04-18
  • 1970-01-01
  • 1970-01-01
  • 2016-06-06
  • 2018-01-16
  • 2012-04-03
  • 2021-12-01
相关资源
最近更新 更多