Tkinter 滚动条不滚动

2024-01-18

我正在尝试创建一个带有两个画布和一个滚动条的图形用户界面,同时穿过这两个画布,作为另一个项目的测试。我创建了根、两个画布,并使用网格方法将一些标签固定到每个画布上,并创建了滚动条。

但是,当我运行该程序时,滚动条会移动,但窗口的内容根本没有改变,就好像滚动条不起作用一样。我通过谷歌搜索我的问题尝试了一些解决方案,但到目前为止我还无法解决它。

相关代码是

from tkinter import *
root = Tk()
‪#‎scroll‬
scrollbar = Scrollbar(root)
scrollbar.pack(side=RIGHT, fill=Y)
firstCanvas = Canvas(root, width=200, height=100)
firstCanvas.pack(side="left", fill="both", expand=True)
secondCanvas = Canvas(root, width=20000, height=10000,scrollregion=(0,0,0,5000),yscrollcommand=scrollbar.set)
secondCanvas.pack(side="left", fill="both", expand=True)
secondCanvas.create_rectangle((200,300,300,6000))
widget = Label(firstCanvas, text='Spam')
widget.pack()

# Lots of widgets so they reach beyond the screen, all in the following format

widgetOne=Label(firstCanvas, text="this is a test")
widgetOne.pack()
widgetTwo=Entry(firstCanvas)
widgetTwo.pack()
widgetThree=Label(secondCanvas, text='Spam')
widgetFour=Entry(secondCanvas)
widgetFour.pack()   

scrollbar.config(command=secondCanvas.yview)
mainloop()

画布只会滚动画布对象。对于小部件,这意味着使用以下命令创建的小部件canvas.create_window(...)

See 在 Tkinter 中向一组小部件添加滚动条 https://stackoverflow.com/q/3085696/7432

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tkinter 滚动条不滚动 的相关文章

随机推荐

  • ASP.NET MVC 3 最佳实践/设计

    我花了很多时间寻找使用 EF 4 1 或其他 ORM 设计 ASP NET MVC 3 网站的最佳实践 我找到了这个在 ASP NET MVC 应用程序中实现存储库和工作单元模式的教程 http www asp net mvc tutori
  • 如何清除绑定到 Google 地点自动完成的输入?

    这是我的问题 我正在使用 Google 地点自动完成功能从用户那里收集有关地点的信息 在事件 place changed 中 我保存此信息 不过 我想让用户可以添加多个位置 所以在保存这个地方后我想清除输入 但是 Google 自动完成功能
  • 修改foreach循环中的数组值[重复]

    这个问题在这里已经有答案了 我想知道是否可以编辑正在处理的当前对象foreach loop 我正在处理一系列对象 questions我想在我的数据库中浏览并查找与该问题对象相关的答案 因此 对于每个问题 获取答案对象并更新当前的 quest
  • 在显示表格单元格中使用边距[重复]

    这个问题在这里已经有答案了 我尝试在 li 中添加 margin left margin right 但它没有给它们之间留出空间 我应该添加什么来在列表之间留出一个空格 CSS btn top float right height 40px
  • Windows Azure 开发存储 Blob 服务未启动

    当我启动开发存储模拟器时 出现错误 The process cannot access the file because it is being used by another process 我猜这只发生在 BLOB 上 其他服务 即队列
  • 每次操作后的 MySQL SUM 和 MIN

    考虑以下表结构 Quantity BaseValue Id 0 3 1 1 0 8 1 2 0 5 1 3 0 2 1 4 假设这是一张表 名为Transactions 有什么方法可以对此表进行选择查询 它将对表中的值进行求和Quantit
  • Glibc 字符串操作函数的算法复杂度

    我意识到 Glibc 源代码经过了极其优化 并且是手工编码的汇编 是否有任何文档分析了常用字符串操作函数的算法复杂性 Big O 例如strmcp strncmp etc 可能没有这方面的文档 因为它很简单 其复杂度为 O n strcmp
  • 删除...创建与更改

    当涉及到创建存储过程 视图 函数等时 对对象执行 DROP CREATE 或 ALTER 哪个更好 我见过许多 标准 文档声称要执行 DROP CREATE 但我也见过许多提倡使用 ALTER 方法的评论和争论 ALTER 方法保留了安全性
  • 如何设置 HttpURLConnection 的内容类型?

    你知道如何设置吗Content Type on HttpURL连接 http developer android com reference java net HttpURLConnection html 以下代码适用于 Blackberr
  • 范围或地图返回什么?

    Go 有非常简洁的多返回值范例 但看起来像v ok map key and v k range m使用具有相同符号的不同机制 这是一个简单的例子 func f2 k v string return Hello World func main
  • Firebase - 应用程序分发无法获取应用程序信息:[403]调用者没有权限[重复]

    这个问题在这里已经有答案了 我正在使用 gradle 开发 Firebase App Distribution 我已经遵循了此中的所有步骤firebase 官方链接 https firebase google com docs app di
  • 修复 COM 引用:类型库导入程序无法转换成员 DISPPARAMS.rgvarg 的签名

    我有一个构建服务器 我在其中构建 Visual Studio 扩展 我最近迁移到另一台服务器 现在我收到以下警告 C Windows Microsoft NET Framework v4 0 30319 Microsoft Common t
  • 在 Eclipse 中调试时如何跳过 JRE 代码?

    在 Eclipse 中调试时 我单步执行 F5 语句 如下所示 encryptedBytes LightWeightEncryptor encrypt messageBytes password toCharArray 调试器进入 JRE
  • 从逗号分隔的字符串中批量插入

    我有一个表 其中一列包含以下数据 abc 2 2 34 5 3 2 34 32 2 3 2 2 def 2 2 34 5 3 2 34 32 2 3 2 2 我想获取这些数据并将其插入到另一个表中 使用逗号作为分隔符 就像您可以指定FIEL
  • C# TCP 套接字错误 - 10060

    我有一个 Windows 服务作为服务器 我以 localhost 作为客户端运行一个 Windows 窗体应用程序 这两个程序都使用 TCP 套接字连接来发送 接收数据 服务器侦听端口 8030 程序运行正常 但是 当我增强客户端程序以在
  • 在画布上手动逐像素绘制一个圆圈[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在尝试做一些复杂的效果 为了做到这一点 我必须将其分解为各个组件 我可以在此基础上进行构建 并希望它们能够组合在一起 现在在画布上画一个
  • 浏览器将边框值截断为整数

    每当非整数像素值用于元素的边框时 浏览器都会将该值截断为整数 为什么会这样呢 我知道边境不会actually占用像素的一部分 但这些类型的值有时与其他值结合使用以形成完整像素 例如 宽度为 1 6px 的左右边框应导致元素的总宽度增加 3p
  • Console.Clear() 闪烁

    while true Console Clear for int row 0 row lt 50 row for int col 0 col lt 50 col Console Write world row col Console Wri
  • 当原始对象更改时,绑定不会更新

    我想我误解了 Angular 中数据绑定和作用域的工作原理 或者我对 Javascript 有一些误解 我希望有人能帮助我 假设我有一个工厂 它有一个对象 并为其定义了一个 getter setter app factory myFacto
  • Tkinter 滚动条不滚动

    我正在尝试创建一个带有两个画布和一个滚动条的图形用户界面 同时穿过这两个画布 作为另一个项目的测试 我创建了根 两个画布 并使用网格方法将一些标签固定到每个画布上 并创建了滚动条 但是 当我运行该程序时 滚动条会移动 但窗口的内容根本没有改